RandomStr實驗報告(驗證碼實驗)
要求根據RandomStr.java:使用類型轉換生成六位驗證字符串,示例程序每次運行時,都會生成不同的字符串。實現上述用戶輸入驗證碼的功能。
信1603 20163548 馬雯秋
一、程序設計思想
1.首先建立一個RandomStr類
2.定義空字符串,通過for循環實現隨機產生六位字母的隨機數
3.強制轉化數據類型,將int型強制轉化為char類型
4.輸出驗證碼
5.輸入驗證碼
6.驗證用戶是否輸入正確
二、程序流程圖
三、源程序
//計算機隨機產生驗證碼,用戶輸入並判斷輸入是否正確
import java.util.Scanner;
public class RandomStr
{
public static void main(String[] args)
{
String result = "";//定義一個空字符串
for(int i = 0 ; i < 6 ; i ++)//進行6次循環
{
int intVal = (int)(Math.random() * 26 + 97);//生成一個97~122的int型的整數
result = result + (char)intVal;//將intValue強制轉換為char後連接到result後面
}
System.out.println(result); //輸出隨機字符串
Scanner input=new Scanner(System.in);
System.out.println("請輸入驗證碼");
String string=input.nextLine();
if(string.equals(result))
{
System.out
}
else
{
System.out.println("驗證碼輸入錯誤");
}
}
}
四、實現結果截圖
五、實驗總結
1.在進行驗證碼是否輸入正確的判斷語句中,一開始是這樣寫的:if(string == result),但是判斷結果總是“驗證碼輸入錯誤”。後來通過查閱資料得知java語言中不能用==和!=判斷兩個變量是否相等,要用if(A.equals(B))語句來判斷A和B是否相等。
2. 熟悉強制轉化類型語句、以及+在不同情境下的作用(此時為連接符,不代表加法運算)
int intVal = (int)(Math.random() * 26 + 97);
//生成一個97~122的int型的整數
result = result + (char)intVal;
//將intValue強制轉換為char後連接到result後面
RandomStr實驗報告(驗證碼實驗)