20165334 實驗一 Java開發環境的熟悉
阿新 • • 發佈:2018-04-02
dom 快捷鍵 實驗 ati inpu 問題 system.in scan parse
20165334 實驗一 Java開發環境的熟悉
實驗內容
1、使用JDK編譯、運行簡單的java程序
2、使用IDEA編輯、編譯、運行、調試java程序
實驗步驟
1、使用JDK編譯、運行簡單的java程序
步驟
- 使用
mkdir
建立學號目錄 - 使用
vim Hello
編寫代碼 - 使用
javac -d . Hello.java
編譯代碼 使用
java ltl.Hello
運行代碼截圖如下
2、使用IDEA編輯、編譯、運行、調試java程序
- 編寫
HelloJDB
調試項目 - 設置斷點
- 單擊菜單「Run」->「Debug...」(或使用Alt+Shift+F9快捷鍵)開始調試Java程序
- 單步運行:
Step Into
Step Over
- 設置條件斷點
方法斷點:有時候我們懷疑某個方法出錯了,就可以設置方法斷點。把光標移到方法中的任一行,使用菜單「Run」->「Toggle Method Breakpoint」
截圖如下:
練習題: 產生一個隨機數,讓用戶猜測,猜錯了告訴用戶是大了還是小了。 並進行測試(正常情況,異常情況,邊界情況)
代碼如下
第一次代碼
//鍵盤輸入,沒有考慮邊緣情況 import java.util.Random; import java.util.Scanner; public class rdtexttwo { public static void main(String[] args) { Random rd = new Random(); int a = rd.nextInt(100); System.out.println("請輸入100以內的數猜:(註意你一共有三次機會)"); Scanner input = new Scanner(System.in); for (int i = 0; i < 3; i++) { int b = input.nextInt(); if (b == a) { System.out.println("恭喜你猜對了,兄弟你可以去買彩票了!"); break; } else if (b < a) { System.out.println("哎呀,你猜的有點小了,可以猜大點"); } else System.out.println("你猜的數有點大"); } } }
//命令行輸入 import java.util.Random; public class rdtextone { public static void main(String args[]) { Random rd=new Random(); int a=rd.nextInt(100); int b; b=Integer.parseInt(args[0]); System.out.println("請輸入100以內要猜的數:"); if(b==a) { System.out.println("恭喜你猜對了,你可以去買彩票了"); } else if (b<a) { System.out.println("哎呀,你猜的數有點小"); } else { System.out.println("你猜的數有點大"); } } }
運行截圖
第二次修改考慮邊緣情況
由於學了第七章的try -catch
語句,便設計了防止用戶輸入錯誤的功能。
代碼如下
import java.util.Random;
import java.util.Scanner;
public class rdtext {
public static void main(String[] args) {
Random rd = new Random();
int a = rd.nextInt(100);
System.out.println("請輸入100以內的數猜:(註意你一共有三次機會)");
Scanner input = new Scanner(System.in);
try {
for (int i = 0; i < 3; i++) {
int b = input.nextInt();
if (b == a) {
System.out.println("恭喜你猜對了,兄弟你可以去買彩票了!");
break;
} else if (b < a) {
System.out.println("哎呀,你猜的有點小了,可以猜大點");
} else
System.out.println("你猜的數有點大");
}
} catch (Exception e) {
System.out.println("輸入有誤,請輸入100以內的數字");
}
}
}
運行截圖
實驗過程中遇到的問題
在設計猜數程序是第一次沒有考慮邊緣情況,第二次設計雖然解決了防止用戶輸入非數字的功能,但還沒解決用戶輸入大於100的情況,我嘗試用while(input.nextInt() <100)
,雖然解決了這個問題但引入另一個問題,當用戶輸入正常數字時沒有運行結果,我會慢慢解決。
實驗總結
邊緣測試可以發現很多問題,不斷測試才能設計一個完美的程序
步驟 | 耗時 | 百分比 |
---|---|---|
需求分析 | 10min | 10% |
設計 | 20min | 20% |
代碼實現 | 50min | 50% |
測試 | 10min | 10% |
分析總結 | 10min | 10% |
20165334 實驗一 Java開發環境的熟悉