實驗一 Java開發環境的熟悉
一、 實驗内容:
(一)使用JDK編譯、運作簡單的程式
(二)使用idea編輯、編譯、運作、調試Java程式。
二、 實驗步驟:
(一) 指令行下Java程式開發
- 打開cmd

2. 使用md 20145105指令建立一個實驗目錄,名稱為學号201045105,并用dir指令檢視
3. 使用cd 20145105指令進入實驗目錄,再建立第一個實驗目錄exp1并進入。
4. 輸入cd可以檢視目前工作路徑。
5. 建立一個文本檔案,重命名為Hello.Java,并編輯輸入代碼。
6. 使用javac –d.Hello.java編譯代碼。
7. 使用java ljp.Hello運作程式(第一次少了一個空格,修改後運作正确)。
(二) idea下Java程式開發、調試
- 打開idea,建立項目實驗一,再建立java class“HelloJDB”。
2. 輸入代碼。
3. 運作程式。
4. 調試程式,設定斷點。
5. 單步運作。
(三) 練習(包括問題和解決方法)
題目:實作凱撒密碼,并進行測試。
- 初步編輯代碼,試運作,不能正确顯示密文,有亂碼。
2. 檢查後發現,加上密鑰後會有超出字母範圍的符号出現,做出修改。
3. 再次運作,成功。
4. 進行一些更友好的修改。
5. 最終代碼。
importjava.util.Scanner;
import java.lang.String;
public class lianxi {
public static void main(String[] args) {
int i = 0;
int k = 0;
//輸入密鑰
do {
System.out.println("請輸入密鑰(1~26):");
Scanner
miyao = new Scanner(System.in);
k = miyao.nextInt();
}while ( k
> 25);
//輸入明文
System.out.println("請輸入明文:");
Scanner
mingwen = new Scanner(System.in);
String m = mingwen.nextLine();
char[] mm
= m.toCharArray();
//加密過程
for(i = 0;i < m.length();i++) {
if(mm[i]
> 96 && mm[i] < 123 ) {
mm[i] += k;
if(mm[i] > 123) {
mm[i] -= 26;
}
}
> 64 && mm[i] < 91) {
if(mm[i] > 91) {
}
//輸出密文
System.out.println("輸出密文是:");
for(i = 0;
i < m.length(); i++) {
System.out.print(mm[i]);
}
}
三、 實驗問題:
- 輸入明文後不知道如何對字元串内部字元單獨操作。
解決:查找書中代碼後,使用toCharArray()将字元串轉化為數組後,再使用for循環依次對每個字元操作。
2. 初步編輯代碼試運作後,得出的密文不正确,有亂碼。
解決:經過多次運作,發現部分字母加上密鑰後會超出字母範圍,是以增加了if條件判斷,如果超出範圍就減去26.
四、 實驗心得:
第一次自己編寫代碼,本以為會做不出來,但是真正操作起來發現也沒有想象中的那麼難,重點就在于編寫代碼前的分析階段,分析實作凱撒密碼需要經過幾個步驟、幾次輸入、什麼變換才能成功得到密文。分析過後,需要的就是按部就班地将設計實作出來,在這一步,我發現我對一些常用文法的掌握還不太熟練,需要翻書才知道應該用什麼文法,看來隻是能看懂代碼并不代表會自主編輯,還是要多操作多練習。
步驟 | 耗時 | 百分比 |
需求分析 | 15min | 11.54% |
設計 | 10min | 7.69% |
代碼實作 | 30min | 23.08% |
測試 | ||
分析總結 | 1h | 46.15% |