第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

輸入驗(yàn)證檢查輸入是否為雙精度

輸入驗(yàn)證檢查輸入是否為雙精度

拉丁的傳說 2022-06-23 15:49:16
我想檢查我輸入的輸入是否是正確的數(shù)據(jù)類型。例如,如果用戶int在我希望他們輸入時(shí)輸入 a,double那么程序會告訴他們有錯(cuò)誤。這是我到目前為止所擁有的:System.out.println("Enter the temperature in double:");String temp = input.nextLine();try{    Double temperature = Double.parseDouble(temp);}catch(Exception e){    isValid = false;    System.out.println("Temperature  must be a double ");}它所做的一切都是通過程序繼續(xù)進(jìn)行,而不是在我輸入int. 一直堅(jiān)持這一點(diǎn),所以任何幫助將不勝感激。
查看完整描述

2 回答

?
開滿天機(jī)

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超13個(gè)贊

我認(rèn)為您正在尋找僅驗(yàn)證十進(jìn)制數(shù)字(不包括整數(shù))。如果是這種情況,那么您可以使用正則表達(dá)式:


System.out.println("Enter the temperature in double:");

String temp = input.nextLine();

while (temp != null && !temp.matches("^[0-9]*\\.([0-9]+)+$")) {       // use of regex here

    System.out.println("Enter the temperature in double:");

    temp = input.nextLine();                                          // read input again

}

這將循環(huán)直到用戶只輸入有效的十進(jìn)制輸入。這個(gè) 正則表達(dá)式的解釋。


查看完整回答
反對 回復(fù) 2022-06-23
?
鳳凰求蠱

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊

由于您不想int被接受,您可以添加一個(gè)if來檢查輸入String是否有小數(shù)點(diǎn)。


    System.out.println("Enter the temperature in double:");

    String temp = (new Scanner(System.in)).next();

    if (temp.contains(".")) {

        try {

            Double temperature = Double.parseDouble(temp);

        } catch(Exception e) {

            isValid = false;

            System.out.println("Temperature  must be a double ");

        }

    } else {

        isValid = false;

        System.out.println("Temperature  must be a double ");

    }


查看完整回答
反對 回復(fù) 2022-06-23
  • 2 回答
  • 0 關(guān)注
  • 109 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號