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

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

有沒有辦法使用掃描儀格式化用戶的輸入?

有沒有辦法使用掃描儀格式化用戶的輸入?

繁華開滿天機(jī) 2022-08-03 16:23:51
我正在嘗試構(gòu)建一個(gè)程序,該程序要求用戶提供其DOB,如果不是DD / MM / YYYY格式,則會(huì)引發(fā)錯(cuò)誤。有誰知道如何實(shí)現(xiàn)這一目標(biāo)?我很抱歉,如果我沒有做足夠的研究,但我真的找不到任何關(guān)于格式化日期輸入的內(nèi)容。感謝您的幫助。
查看完整描述

3 回答

?
米琪卡哇伊

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

您需要在讀取輸入后對(duì)其進(jìn)行處理。正則表達(dá)式在此任務(wù)中非常有效。 將檢查用戶提供的字符串是否為 DD/MM/YYYY。^\\d{2}/\\d{2}/\\d{4}$


因此,您可以按如下方式比較用戶輸入:


if(userStr.matches("^\\d{2}/\\d{2}/\\d{4}$")){

    //Do stuff if input is good

}else{

    //Do stuff if input is bad

}


查看完整回答
反對(duì) 回復(fù) 2022-08-03
?
有只小跳蛙

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

如果這對(duì)您有幫助,這是整個(gè)程序。這還會(huì)使用 DateTimeFormatter 驗(yàn)證日期。因此,如果用戶輸入 ,它將失敗。32/01/2000


import java.time.LocalDate;

import java.time.format.DateTimeFormatter;

import java.time.format.DateTimeParseException;

import java.util.Scanner;


public class DateOfBirth {

    public static void main(String[] args) {

        System.out.println("Please enter your DOB");

        Scanner myScanner = new Scanner(System.in);

        String input = myScanner.next();

        while (!validDate(input)) {

            System.out.println("ERROR: Invalid date. Please enter your DOB");

            input = myScanner.next();

        }

        myScanner.close();

    }


    private static boolean validDate(String input) {

        try {

            DateTimeFormatter inputFormat = DateTimeFormatter.ofPattern("dd/MM/yyyy");

            LocalDate.parse(input, inputFormat);

        } catch (DateTimeParseException e) {

            return false;

        }

        return true;

    }

}


查看完整回答
反對(duì) 回復(fù) 2022-08-03
?
富國(guó)滬深

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

boolean isDOB(String input) {

        String[] inputs = input.split("/");

        if(inputs.length!=3)

            return false;

        int days = Integer.parseInt(inputs[0]);

        int month = Integer.parseInt(inputs[1]);        

        if(days>31 || month>12 || inputs[2].length()!=4) {

            return false;           

        }

        return true;        

    }


查看完整回答
反對(duì) 回復(fù) 2022-08-03
  • 3 回答
  • 0 關(guān)注
  • 117 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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