實驗任務四-實現登陸界面的內容
程序題目-實現登陸界面的內容
【程序設計思想】
首先定義字符串登錄名,密碼,空的字符串,用對話框的形式輸入登錄名,密碼,驗證碼,隨後用if……else判斷驗證碼是否一致,並輸出判斷結果。
【程序流程圖】
【源程序】
//信1605-1 寇肖萌 20163446
import javax.swing.JOptionPane;
public class Randomstr{
public static void main(String args[]) {
String dengluming;
String mima
dengluming=JOptionPane.showInputDialog("請輸入登錄名:\n");//輸入登錄名
mima=JOptionPane.showInputDialog("請輸入密碼:\n");//輸入密碼
//定義一個空字符串
String result = "";
//進行6次循環
for(int i = 0 ; i < 6 ; i ++)
{
//生成一個97~122的int型的整數
int intVal = (int)(Math.random() * 26+ 97);
//將intValue強制轉換為char類型的字符串
result = result + (char)intVal;
}
//輸入驗證碼
String input=JOptionPane.showInputDialog
//判斷驗證碼與輸入的是否一致
if(input.equals(result))
{
JOptionPane.showMessageDialog(null,"驗證成功!","恭喜您",
JOptionPane.PLAIN_MESSAGE);
}
else
{
JOptionPane.showMessageDialog(null,"驗證失敗!","很遺憾",
JOptionPane.PLAIN_MESSAGE);
}
}
}
【實現結果截圖】
【實驗總結】
Java語言中輸出字符串時,先隨機從97-122的數中隨機抽出固定長度的int整數,用intValue強制轉換成char類型的字符串,在判斷輸入的驗證碼與給出的隨機驗證碼是否一致時,開始用雙等號,一直出不來,改成用equals()則能成功判斷
原因是因為字符串是對象類型,不能簡單的用雙等號判斷,==判斷是根據內存地址來判斷,而不同對象即使內容一樣,內存地址也不一樣,所以不能成功判斷,要用A.equals(B)來判斷字符串
實驗任務四-實現登陸界面的內容