今日內容
1.break和continue關鍵字以及循環嵌套
1.1 break和continue的區別?
continue表示跳過當前循環,繼續執行下一次循環break表示結束整個循環。
案例:
public static void main(String[] args) {
//1.定義一sum變量累加
int sum=0;
//2.鍵盤錄入,導包、建立對象、接收數據
Scanner sc=new Scanner(System.in);
//3.使用while循環接收數據
while(true){
//接收數據
int num=sc.nextInt();
//判斷是不是0,若是是0那麼就跳出循環
if(num==0){
break;
}
//累加
sum+=num;
}
//打印結果
System.out.println("sum="+sum);
}
1.2 循環嵌套:通常是兩層循環的嵌套
for(初始化語句;條件判斷語句;條件控制語句){
//循環體
for(初始化語句;條件判斷語句;條件控制語句){
//循環體
}
}
例如:
for(int i=1;i<=5;i++){
for(int j=1;j<=5;j++){
//循環體
}
}
執行流程:
當i=1時,內循環的j從1到5都會循環執行一次;
當i=2時,內循環的j從1到5都又會循環執行一次;
...
外循環的i每改變一次,內循環都須要循環5次
案例:九九乘法表
public class ForTest4{
public static void main(String[] args) {
for(int i=1;i<=9;i++){
//內循環執行完了以後就會在一行打印9個@ @@@@@@@@@
for(int j=1;j<=i;j++){
System.out.print(i+"*"+j+"="+(i*j)+"\t");
}
//換行
System.out.println();
}
}
}
2.隨機數據使用步驟
1.在類上面導包
import java.utils.Random;
2.建立對象
Random r=new Random();
3.獲取隨機數
int num=r.nextInt(隨機數的最大值,但不包括這個值);
案例:猜數字
public static void main(String[] args) {
//要完成猜數字的遊戲,首先須要有一個要猜的數字,使用隨機數生成該數字,範圍1到100
Random r = new Random();
int number = r.nextInt(100) + 1;
while(true) {
//使用程序實現猜數字,每次均要輸入猜想的數字值,須要使用鍵盤錄入實現
Scanner sc = new Scanner(System.in);
System.out.println("請輸入你要猜的數字:");
int guessNumber = sc.nextInt();
//比較輸入的數字和系統產生的數據,須要使用分支語句。這裏使用if..else..if..格式,根據不一樣狀況進行猜想結果顯示
if(guessNumber > number) {
System.out.println("你猜的數字" + guessNumber + "大了");
} else if(guessNumber < number) {
System.out.println("你猜的數字" + guessNumber + "小了");
} else {
System.out.println("恭喜你猜中了");
break;
}
}
}
3.idea開發工具的安裝、使用
常見的快捷鍵:
快速生成語句
快速生成main()方法:psvm,回車
快速生成輸出語句:sout,回車
.var自動生成=左邊的變量
soutv自動打印變量名和值
數組名.fori + 按回車
內容輔助鍵
Ctrl+Alt+space(內容提示,代碼補全等)
快捷鍵:
註釋:
單行:選中代碼,Ctrl+/,再來一次,就是取消
多行:選中代碼,Ctrl+Shift+/,再來一次,就是取消
格式化
Ctrl+Alt+L
4.數組
數組:可以一次性存儲多個同類型數據的結構。
數組的定義格式和初始化:
推薦:數據類型[] 數組名;
例如:int[] arr;
建立並初始化:
動態初始化:建立數組的時候指定數組的長度並有系統賦予默認值。
數據類型[] 數組名=new 數據類型[長度];例如:
int[] arr=new int[3];
靜態初始化:建立數組的時候指定初始化值,有系統根據值肯定長度。
複雜的寫法:數據類型[] 數組名=new 數據類型[]{值1,值2,...};
簡化的寫法:數據類型[] 數組名={值1,值2,...};
例如:int[] arr={100,200,300};
訪問數組:
打印數組名稱:結果是地址值,數組內存中佔用的空間的編號。至關於教室的門牌號
獲取值:
數據類型 變量名=數組名[索引];能夠使用變量接收,也能夠直接打印 例如: int a=arr[0];
賦值(存值):
數組名[索引]=值;
獲取長度:
int length = 數組名.length; //.var自動生成左邊的變量
注意事項:索引的初始值從0開始,最大值數組的長度-1;
常見的小問題:
1.數組索引越界異常:
ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5
2.空指針異常:.前面的對象是null就會出現空指針異常
Exception in thread "main" java.lang.NullPointerException
java