问答详情
源自:12-2 项目问题解析 1

请大神给出改进意见,不胜感激

父类

package com.zuche;

public  class CarProperty {
	public String carP1;//车辆名称
	public  String carP2; //车辆类型
	 public int carP3;//载客量
     public  int carP4;//载货量
     public int carP5; //租金每天
      
     public CarProperty(String newcarP1,String newcarP2,
    		 int newcarP3,int newcarP4,int newcarP5) {
    	 carP1=newcarP1;
    	 carP2=newcarP2;
    	 carP3=newcarP3;
    	 carP4=newcarP4;
    	 carP5=newcarP5;   	
     }

}

子类

package com.zuche;

public class HuoChe extends CarProperty {

	public HuoChe(String newcarP1, String newcarP2, int newcarP3, int newcarP4, int newcarP5) {
		super(newcarP1, newcarP2, newcarP3, newcarP4, newcarP5);
		// TODO Auto-generated constructor stub
	}

	@Override
	public String toString() {
		return carP1 + "         " + carP2 + "            " + carP3 + "        " + carP4 + "     "
				+ carP5 ;
	}

}
package com.zuche;

public class KeChe extends CarProperty {

	public KeChe(String newcarP1, String newcarP2, int newcarP3, int newcarP4, int newcarP5) {
		super(newcarP1, newcarP2, newcarP3, newcarP4, newcarP5);
		// TODO Auto-generated constructor stub
	}
	public String toString() {
		return carP1 + "         " + carP2 + "            " + carP3 + "        " + carP4 + "     "
				+ carP5 ;
	}

}
package com.zuche;

public class PiKa extends CarProperty {

	public PiKa(String newcarP1, String newcarP2, int newcarP3, int newcarP4, int newcarP5) {
		super(newcarP1, newcarP2, newcarP3, newcarP4, newcarP5);
		// TODO Auto-generated constructor stub
	}
	public String toString() {
		return carP1 + "         " + carP2 + "            " + carP3 + "        " + carP4 + "     "
				+ carP5 ;
	}
}

测试

package com.zuche;
import java.util.*;
public class Initial {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
	CarProperty huo1=new HuoChe("1,奥迪", "货车", 2, 3, 100);
	CarProperty huo2=new HuoChe("2,奥拓", "货车", 2, 2, 80);
	 CarProperty ke1=new KeChe("3,宝马", "客车", 4, 0, 150);
	 CarProperty ke2=new KeChe("4,一汽", "客车", 4, 0, 100);
     CarProperty pi1=new PiKa("5,五菱", "两用", 8, 2, 80);
     CarProperty pi2=new PiKa("6,奔马", "两用", 2, 3, 60);
         int  sum=0;
		int i3=0;
    System.out.println("请您选择是否租车?");
    System.out.println("1,是    2,否");
    Scanner input1=new Scanner(System.in);
      int i1=input1.nextInt();
    if(i1==1) {
    	System.out.println("车辆名称   车辆类型   载客量/人   载货量/吨   租金/每天");
    	System.out.println(huo1.toString());
    	System.out.println(huo2.toString());
    	System.out.println(ke1.toString());
    	System.out.println(ke2.toString());
    	System.out.println(pi1.toString());
    	System.out.println(pi2.toString());
   System.out.println("请您选择租车数量:");
    	Scanner input2=new Scanner(System.in);
    	  int i2=input2.nextInt();
    	  for(int i=1;i<i2+1;i++) {
    		  System.out.println("请输入您要租用的第"+i+"辆车的编号");
    		  Scanner input3=new Scanner(System.in);
    		    i3=input3.nextInt();
    		  switch(i3) {
    		  case 1:
    			  sum=sum+100;
    			  break;
    		  case 2:
    			  sum=sum+20;
    			  break;
    		  case 3:
    			  sum=sum+150;
    			  break;
    		  case 4:
    			  sum=sum+100;
    			  break;
    		  case 5:
    			  sum=sum+80;
    			  break;
    		  case 6:
    			  sum=sum+60;
    			  break;
    			  default:
    				  System.out.println("您输入的编号是无效的!");
    		  
    		  }if(i3<0||i3>6)
    			  break;
    			  }if(i3>0&&i3<7) {
    	   System.out.println("请输入租用的天数");
    	  Scanner input4=new Scanner(System.in);
    	  int sum1=input4.nextInt();
    	  sum=sum*sum1;
    	  System.out.println("总共租车:"+i2+"辆,租用:"+sum1+"天,共需:"+sum+"元人民币。");
    	  }else {
    		  System.out.println("请重新操作!");
    	  } }else {
    	System.out.println("感谢使用该系统!");
    }
    
	}

}


提问者:long_l 2017-07-18 21:39

个回答

  • qq__6307
    2017-07-19 11:05:19
    已采纳

    package com.zuche;

    import java.util.*;

    public class Initial {

     

        public static void main(String[] args) {

            // TODO Auto-generated method stub

        CarProperty huo1=new HuoChe("1,奥迪", "货车", 2, 3, 100);

        CarProperty huo2=new HuoChe("2,奥拓", "货车", 2, 2, 80);

         CarProperty ke1=new KeChe("3,宝马", "客车", 4, 0, 150);

         CarProperty ke2=new KeChe("4,一汽", "客车", 4, 0, 100);

         CarProperty pi1=new PiKa("5,五菱", "两用", 8, 2, 80);

         CarProperty pi2=new PiKa("6,奔马", "两用", 2, 3, 60);

             

    int  sum=0;


           int i3=0;


       System.out.println("请您选择是否租车?");


       System.out.println("1,是    2,否");


       Scanner input1=new Scanner(System.in);


         int i1=input1.nextInt();


       if(i1==1) {


           System.out.println("车辆名称   车辆类型   载客量/人   载货量/吨   租金/每天");


           /*System.out.println(huo1.toString());


           System.out.println(huo2.toString());


           System.out.println(ke1.toString());


           System.out.println(ke2.toString());


           System.out.println(pi1.toString());


           System.out.println(pi2.toString());

    */

      


                 System.out.println("请输入您要租用辆车的编号");


                 Scanner input3=new Scanner(System.in);


                   i3=input3.nextInt();


                 switch(i3) {


                 case 1:


                     sum=sum+100;


                     break;


                 case 2:


                     sum=sum+20;


                     break;


                 case 3:


                     sum=sum+150;


                     break;


                 case 4:


                     sum=sum+100;


                     break;


                 case 5:


                     sum=sum+80;


                     break;


                 case 6:


                     sum=sum+60;


                     break;


                     default:


                         System.out.println("您输入的编号是无效的!"); 


                }


                      if(i3<0||i3>6){

                      

                      break;

                      

                      }else if(3>0&&i3<7){


                           System.out.println("请您选择租车数量:");


                           Scanner input2=new Scanner(System.in);


                           int i2=input2.nextInt();


                        System.out.println("请输入租用的天数");


                        Scanner input4=new Scanner(System.in);


                        int sum1=input4.nextInt();


                        sum=sum*sum1*i2;


                       }else {

                   

                   System.out.println("请重新操作!");

                   

                   } 


       }else {


           System.out.println("感谢使用该系统!");


       }

    }



    }


  • 颜印阳
    2017-07-27 20:04:35

    i3保证大于0就行了吧,不用&&i3<7,应该允许重复租用车辆的

    个人见解

  • qq_小拇指_2
    2017-07-21 17:50:10

    很不错了

  • qq__6307
    2017-07-19 12:29:18

    System.out.println("请您选择租车数量:");

            Scanner input2=new Scanner(System.in);

              int i2=input2.nextInt();

    放到了

    else if(3>0&&i3<7){

    }

    里面  

    -------------------------------------------------------------------

        sum=sum*sum1

    改成 

        sum=sum*sum1*i2;

    --------------------------------------------------------------------

    for(int i=1;i<i2+1;i++) { 这行删除

                  System.out.println("请输入您要租用的第"+i+"辆车的编号");

    这个改成

                 System.out.println("请输入您要租用辆车的编号");


  • NightSong
    2017-07-19 11:44:24

    666