標籤:隨機數 運行 out 流程語句 產生 play ++ ali 介紹
本節內容:
- 引用資料資料類型(Scanner、Random)
- 流程式控制制語句(if、for、while、dowhile、break、continue)
引用資料類型1.1 Scanner類
我們要學的Scanner類是屬於引用資料類型,我們先瞭解下引用資料類型。
與定義基礎資料型別 (Elementary Data Type)變數不同,引用資料類型的變數定義及賦值有一個相對固定的步驟或格 式。
資料類型 變數名 = new 資料類型();
每種引用資料類型都有其功能,我們可以調用該類型執行個體的功能。
變數名.方法名();
Scanner類是引用資料類型的一種,我們可以使用該類來完成使用者鍵盤錄入,擷取到錄入 的資料。
Scanner使用步驟:
導包:import java.util.Scanner;
建立對象執行個體:Scanner sc = new Scanner(System.in);
調用方法:
int i = sc.nextInt(); 用來接收控制台錄入的數字
String s = sc.next(); 用來接收控制台錄入的字串
瞭解完Scanner類,我們編寫代碼來使用下它:ScannerDemo01.java
1 import java.util.Scanner; 2 public class ScannerDemo01 { 3 public static void main(String[] args) { 4 //建立Scanner參考型別的變數 5 Scanner sc = new Scanner(System.in); 6 //擷取數字 7 System.out.println("請輸入一個數字"); 8 int n = sc.nextInt(); 9 System.out.println("n的值為" + n);10 //擷取字串11 System.out.println("請輸入一個字串");12 String str = sc.next();13 System.out.println("str的值為" + str);14 }15 }
運行結果如所示。
1.2 隨機數類
我們來學習下,用來產生隨機數的類Random,它也屬於引用資料類型。
這個Random類,它可以產生多種資料類型的隨機數,在這裡我們主要介紹產生整數與小數的方式。
public int nextInt(int maxValue) 產生[0,maxValue)範圍的隨機整數,包含0,不包含maxValue;
public double nextDouble() 產生[0,1)範圍的隨機小數,包含0.0,不包含1.0。
引用資料類型的使用方式,在學習鍵盤錄入Scanner時,我們已經學習過,在這裡,再次回顧一下:
- import導包:所屬包java.util.Random
- 建立執行個體格式:Random 變數名 = new Random();
接下來,通過一段代碼,一起學習下Random類的使用,RandomDemo.java
1 import java.util.Random; 2 3 public class RandomDemo { 4 public static void main(String[] args) { 5 // 建立Random類的執行個體 6 Random r = new Random(); 7 // 得到0-100範圍內的隨機整數,將產生的隨機整數賦值給i變數 8 int i = r.nextInt(100); 9 //得到0.0-1.0範圍內的隨機小數,將產生的隨機小數賦值給d變數10 double d = r.nextDouble(); 11 System.out.println(i); 12 System.out.println(d); 13 }
運行結果如下:
流程語句1.標記
當break語句出現在嵌套迴圈中的內層迴圈時,它只能跳出內層迴圈,如果想使用break語句跳出外層迴圈則需要對外層迴圈委任標記。接下來將ForForDemo.java稍作修改,控製程序只列印4行“*”,如下所示。BreakDemo02.java
1 public class BreakDemo02 { 2 public static void main(String[] args) { 3 int i, j; // 定義兩個迴圈變數 4 itcast: for (i = 1; i <= 9; i++) { // 外層迴圈 5 for (j = 1; j <= i; j++) { // 內層迴圈 6 if (i > 4) { // 判斷i的值是否大於4 7 break itcast; // 跳出外層迴圈 8 } 9 System.out.print("*"); // 列印*10 }11 System.out.print("\n"); // 換行12 }13 }14 }
運行結果如所示。
在外層for迴圈前面增加了標記“itcast”。當i>4時,使用break itcast;語句跳出外層迴圈。因此程式只列印了4行“*”。
Java基礎文法