java基礎第二季最後一節課練習
Car.java
package com.imooc;
public abstract class Car {//這是載客車
private int amount;//載客數量
public abstract void run();
public int getAmount() {
return amount;
}
public void setAmount(int amount) {
this.amount = amount;
}
}
CarGo.java
package com.imooc;
public interface CarGo extends CarGoB{//這是載貨車
double ton=2;
public void freight();
}
CarGo2.java
package com.imooc;
public interface CarGo2 extends CarGoB{//這是載貨車
double ton=4;
public void freight2();
}
CarGo3.java
package com.imooc;
public interface CarGo3 extends CarGoB{//這是載貨車
double ton=20;
public void freight3();
}
CarGoB.java
package com.imooc;
public interface CarGoB {
public double ton=0;
}
LCarGo.java
package com.imooc;
public class LCarGo extends Car implements CarGo3{
public void run(){
System.out.println("這是輛大貨車,載客為0");
}
@Override
public void freight3() {
// TODO Auto-generated method stub
System.out.println("這輛車能載大貨物");
}
}
SCarGo.java
package com.imooc;
public class SCarGo extends Car implements CarGo,CarGo2{
@Override
public void run() {
// TODO Auto-generated method stub
System.out.println("這是輕型貨車,載客為0");
}
@Override
public void freight() {
// TODO Auto-generated method stub
System.out.println("這輛車能載小貨物");
}
@Override
public void freight2() {
// TODO Auto-generated method stub
System.out.println("這輛車能載小貨物");
}
}
Initial.java
package com.imooc;
import java.util.Scanner;
public class Initial {
public static void main(String[] args) {
// TODO Auto-generated method stub
Car aoDi=new SCarGo();//建立一個載人的奧迪物件
aoDi.setAmount(4);
CarGoB CaoDi=new SCarGo();//建立一個載貨的奧迪物件
Car maZiDa=new SCarGo();//載人馬自達
maZiDa.setAmount(4);
CarGoB CmaZiDa=new SCarGo();//載貨馬自達
Car piKaXue=new SCarGo();//載人皮卡雪
piKaXue.setAmount(4);
CarGo CpiKaXue=new SCarGo();//載貨皮卡雪
Car jinLong=new LCarGo();//載人金龍
jinLong.setAmount(20);
CarGoB CjinLong=new LCarGo();//載貨金龍
Car sHuaJiang=new SCarGo();//載人松花江
sHuaJiang.setAmount(0);
CarGo2 CsHuaJiang=new SCarGo();//載貨松花江
Car yWeiKe=new LCarGo();//載人依維柯
yWeiKe.setAmount(0);
CarGo3 CyWeiKe=new LCarGo();//載貨依維柯
System.out.println("歡迎使用答答租車系統:");
System.out.println("您是否要租車:1是 0否");
Scanner in=new Scanner(System.in);//進行輸入操作
int input=in.nextInt();//輸入整型
if(input==1){
System.out.println("您可租車的型別及其價目表:");
System.out.println("序號 汽車名稱 租金 容量");
System.out.println("1. 奧迪A4 500$/天 載人:"+aoDi.getAmount()+"人");
System.out.println("2. 馬自達6 400$/天 載人:"+maZiDa.getAmount()+"人");
System.out.println("3. 皮卡雪6 450$/天 載人:"+piKaXue.getAmount()+" "+"載貨:"+CpiKaXue.ton+"噸");
System.out.println("4. 金龍 800$/天 載人:"+jinLong.getAmount()+"人");
System.out.println("5. 松花江 400$/天 載貨:"+CsHuaJiang.ton+"噸");
System.out.println("6. 依維柯 1000$/天 載貨:"+CyWeiKe.ton+"噸");
System.out.println("請輸入您要租汽車的數量:");
int i=in.nextInt();//租車數量
final int cunI=i;//存租車數量
int renNum=0;//統計總載人數
double huoNum=0;//統計總載貨量
double bill=0;//統計租車的總價格
int[] jiK=new int[i]; ;//建立一個陣列,為了存放使用者按順序選擇的車編號
Car[] cheR=new Car[]{aoDi,maZiDa,piKaXue,jinLong,sHuaJiang,yWeiKe};//顯示每一輛車的載人數,為了方便計算總載人數
double[] cheH=new double[6];//顯示每一輛車的載貨量,為了方便計算載貨量
{
cheH[0]=CaoDi.ton;
cheH[1]=CmaZiDa.ton;
cheH[2]=CpiKaXue.ton;
cheH[3]=CjinLong.ton;
cheH[4]=CsHuaJiang.ton;
cheH[5]=CyWeiKe.ton;
}
double[] che$=new double[]{500,400,450,800,400,1000};//顯示每一輛車租一天的價格,為了方便計算總價格
String[] cheName=new String[]{"奧迪A4","馬自達6","皮卡雪6","金龍","松花江","依維柯"};
for(int j=0;i>0;i--,j++){
System.out.println("請輸入第"+(j+1)+"輛車的序號");
int k=in.nextInt()-1;//陣列是從零開始的,這裡-1的操作是為了與陣列下標匹配
jiK[j]=k;//用於存放使用者按順序選擇的車編號
renNum+=cheR[k].getAmount();//獲取總載人數
huoNum+=cheH[k];//獲取總載貨數
bill+=che$[k];//獲取所租的車一天的總價格
}
System.out.println("請輸入租車的天數:");
int tian=in.nextInt();
bill*=tian;//租車的總價格*租車天數,獲取真實租車價格;
System.out.println("您的賬單:");
System.out.println("***可載人的車有:");
i=cunI;//重置i,使它為使用者輸入的值
for(int j=0;i>0;i--,j++){
//int k=in.nextInt()-1;//陣列是從零開始的,這裡-1的操作是為了與陣列下標匹配
if(cheR[jiK[j]].getAmount()>0){//判斷載人是否為0,不為0就進行列印車名
System.out.print(""+cheName[jiK[j]]+" ");//列印車名;
}
}
System.out.print("共載人:"+renNum+"人");
System.out.println();
System.out.println("***可載貨的車有:");
i=cunI;//重置i,使它為使用者輸入的值
for(int j=0;i>0;i--,j++){
//int k=in.nextInt()-1;
if(cheH[jiK[j]]>0){//判斷載貨量是否為0,不為0就進行車名列印;
System.out.print(""+cheName[jiK[j]]+" ");
}
}
System.out.print("共載貨:"+huoNum+"噸");
System.out.println();
System.out.println("***租車總價格:"+bill+"元");
}else{
System.out.println("期待您下次光臨!");
}
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1817/viewspace-2807798/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【躍遷之路】Java基礎練習(異常)(最後更新:2018.05.03)Java
- Java基礎 第一節 第八課Java
- Java基礎 第三節 第一課Java
- 第一章-JAVA基礎-課後總結和課後習題Java
- 零基礎學習Python__小甲魚第一課筆記與課後練習Python筆記
- JAVA 基礎練習題Java
- 課後練習
- Java基礎 第三節 第五課Java
- Java基礎 第三節 第十課Java
- Java基礎 第三節 第七課Java
- Java基礎 第三節 第六課Java
- Java基礎 第二節 第十課Java
- Java基礎 第二節 第三課Java
- Java基礎 --- 綜合練習Java
- JAVA入門第三季第一章第九節課後練習題!Java
- Java基礎 第三節 第二十課Java
- python第一節課內容及練習Python
- 第65節:Java後端的學習之Spring基礎Java後端Spring
- 基礎練習 高精度加法(java)Java
- 最後一課
- 10.15 見習後的第一節課
- Java學習之基礎語法練習Java
- java基礎小練習(31-35)Java
- JAVA學習--JAVA基礎(一)Java
- Java基礎 第二節 第二十一課Java
- HTML基礎練習HTML
- MySQL基礎練習MySql
- Java程式設計基礎24——遞迴練習Java程式設計遞迴
- 那些年,我們一起做過的 Java 課後練習題(1 - 5)Java
- 那些年,我們一起做過的 Java 課後練習題(71 - 75)Java
- java第一次正式課程課後習題Java
- java課後題複習Java
- Python基礎練習題Python
- linux基礎練習題Linux
- IOS基礎-Masonry 練習iOS
- 課後練習-登入-2024/9/29
- 10. 建立管理表課後練習
- 第二章課後練習題