P33 用戶交互Scanner
java.util.Scanner是Java5的新特征,我們可以通過Scanner類來獲取用戶的輸入
基本語法
Scanner s = new Scanner(System.in);//只輸入=后的部分留潦,然后alt+enter補全
通過Scanner類的next()與nextLine()方法獲取輸入的字符串只盹,在讀取前我們一般需要使用hasNext()與hasNextline()判斷是否還有輸入的數(shù)據(jù)
-
next():
- 一定要讀取到有效字符后才可以結束輸入
- 對輸入有效字符之前遇到的空白,next()方法會自動將其去掉
- 只有輸入有效字符后才將其后面輸入的空白作為分隔符或結束符
- <font color='red'> next()不能得到帶有空格的字符串</font>
- nextLine():
- 以Enter為結束符兔院,也就是說nextLine()方法返回的是輸入回車之前的所有字符
- 可以獲得空白
package com.yakko.Scanner;
import java.sql.SQLOutput;
import java.util.Scanner;
public class Demo01 {
public static void main(String[] args) {
//創(chuàng)建一個掃描器對象殖卑,用于接受鍵盤數(shù)據(jù)
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
//判斷用戶有沒有輸入字符串
if(scanner.hasNext()){
String str = scanner.next();//程序會等待用戶輸入完畢,輸入hello world只會輸出hello
// String str = scanner.nextLine();輸入hello world會輸出hello world
System.out.println("輸出的內容為:"+str);
}
//凡是屬于IO流的類如果不關閉會一直占用資源坊萝,要養(yǎng)成良好習慣用完就關掉
scanner.close();
}
}
P36 選擇結構
-
if單選擇結構
String s = scanner.nextLine(); //equals:判斷字符串是否相等 if(s.equals("Hello")){ System.out.println(s); }
-
if雙選擇結構(if,else)
if (score>60){ System.out.println("及格"); }else{ System.out.println("不及格") }
-
if多選擇結構
if(score==100){ System.out.println("恭喜滿分"); }else if (score<100 && score<90){ System.out.println("A級"); }else if(){ }else { }
嵌套的if結構
P37 Switch選擇結構
從Java SE7開始孵稽,switch支持字符串String類型了
小心case穿透,也就是符合一個case之后沒有break十偶,就下面的case都輸出了
String name = "yakko";
switch(name){}//Java SE7才支持的
switch(expression){
case value:
//語句
break;//可選
case value:
//語句
break;//可選
//你可以選擇任意數(shù)量的case語句
default://可選
//語句
}
反編譯class文件看源碼(可看視頻)
P38 while循環(huán)詳解
-
while循環(huán)
while(布爾表達式){ //循環(huán)內容 }
-
do...while循環(huán)
程序最少執(zhí)行一次
do{ //代碼語句 }while(布爾表達式;)
-
for循環(huán)
初始化可以為空語句
for(初始化;布爾表達式;更新){ //代碼語句 }
P45 Java方法
什么是方法
類.對象.方法()菩鲜,一個方法只完成一個功能,這樣利于后期的擴展
方法的定義
Java的方法是一段用來完成特定功能的代碼片段
方法包含一個方法頭和一個方法體
- 修飾符
- 返回值類型
- 方法名
- 參數(shù)類型
- 方法體
方法
P48 命令行傳參
main方法傳參數(shù)的時候惦积,在命令行里編譯后接校,要回退到包的最上級目錄才能運行,如下圖所示
命令行里傳main參數(shù)
P49 可變參數(shù)
- JDK1.5開始,Java支持傳遞同類型的可變參數(shù)給一個方法
- 在方法聲明中蛛勉,在指定參數(shù)類型后加一個省略號(...)
- <font color='red'> 一個方法只能指定一個可變參數(shù)鹿寻,它必須是方法的最后一個參數(shù),任何普通的參數(shù)必須在它之前聲明</font>
//找出誰是最大的诽凌,可變參數(shù)寫法
public static void printMax(double... numbers){
if (numbers.length == 0){
System.out.println("No argument passed");
return;
}
double result = numbers[0];
//排序
for (int i = 1; i < numbers.length; i++){
if (numbers[i] > result){
result = numbers[i];
}
System.out.println("The max value is" + result);
}
}