1. 程式人生 > >實驗任務四-實現登陸界面的內容

實驗任務四-實現登陸界面的內容

erl 登錄 內存地址 import cor java語言 text 原因 dia

程序題目-實現登陸界面的內容

【程序設計思想】

首先定義字符串登錄名,密碼,空的字符串,用對話框的形式輸入登錄名,密碼,驗證碼,隨後用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

("驗證碼:\n"+result+"\n"+"請在此輸入以上驗證碼:\n");

//判斷驗證碼與輸入的是否一致

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)來判斷字符串

技術分享

實驗任務四-實現登陸界面的內容