一,1,編寫程序,由鍵盤輸入三個整數分別存入變量num1,num2,num3中,對它們進行排序,使用if-else結構,並按從小到大的順序輸出:
package practice; import java.util.Scanner; public class IfTest { public static void main( String args[]) { System.out.println("請輸入第一個整數:"); Scanner scan =new Scanner(System.in); int num1=scan.nextInt(); System.out.println("請輸入第二個整數:"); int num2=scan.nextInt(); System.out.println("請輸入第三個整數:"); int num3=scan.nextInt(); if(num1<num2) { if(num3<num1) { System.out.println(num3+","+num1+","+num2); }else if(num3>num2) { System.out.println(num1+","+num2+","+num3); }else System.out.println(num1+","+num3+","+num2); } else {//num1>num2 if(num3>num1) { System.out.println(num2+","+num1+","+num3); }else if(num3<num2) { System.out.println(num3+","+num2+","+num1); }else System.out.println(num2+","+num3+","+num1); } } }
運行結果:
說明:IF-ELSE結構是可以相互嵌套的;
如果IF-ELSE結構中的執行語句只有一行時,對應的一對{}可以省去,但不建議這樣做;
2,我家的狗五歲了,五歲的狗相當於人類的多少歲呢?其實,狗的前兩年每一年相當於人的10.5歲,之后每增加一年就增加四歲。編寫一個程序,獲取用戶輸入的狗的年齡,通過程序顯示其相當於人類的鳥年齡?如果用戶輸入負數,給出相應的提示。
import java.util.Scanner; public class IfTest2 { public static void main(String args[]) { double t; System.out.println("請輸入狗的年齡:"); Scanner scan=new Scanner(System.in); int dogAge=scan.nextInt(); if(dogAge>2) { t= (dogAge-2)*4+21; System.out.println(dogAge+"歲的狗相當於人類的"+t+"歲"); }else if(dogAge<=2&&dogAge>=0) { t=dogAge*10.5; System.out.println(dogAge+"歲的狗相當於人類的"+t+"歲"); }else { System.out.println("您的輸入有誤,請重新輸入"); } } }
運行結果:
二,整理Scanner鍵盤輸入相關知識:
從鍵盤獲取輸入值的具體實現步驟:
- 導包:import java.util.Scanner;
- Scanner的實例化:Scanner scan=new Scanner(System.in);
- 調用Scanner類的相關方法,來獲取指定類型的變量
scan.next();獲取字符串
scan.nextInt();獲取整型
scan.nextDouble();獲取浮點型
scan.nextBoolean();獲取布爾型
對於char型的獲取,Scanner沒有相應的方法,只能獲取一個字符串;
如果非要獲取char型,使用string里面的charAt()方法
import java.util.Scanner; public class ScannerTest { public static void main(String args[]) { Scanner Scan=new Scanner(System.in); System.out.println("請輸入你的性別:"); String gender=Scan.next(); char genderchar=gender.charAt(0); System.out.println(genderchar);
} }
注意:需要根據相應的方法,來輸入指定類型的值,如果輸入的數據類型與要求的類型不匹配時,會拋出一個異常InputMisMatchException;(自動類型提升的除外)