您好我更新編程,所以我需要一些幫助。我需要制定一種方法來檢查生日是否正確。例如960214,其中96是02年是月,14是日,但生日是一個字符串。因此,這裏是我得到:Character.IsDigit在整數Java中返回false而不是true
private static boolean checkCorrect(String a) {
int year = Integer.parseInt(a.substring(0,2));
int month = Integer.parseInt(a.substring(2, 4));
int day = Integer.parseInt(a.substring(4, 6));
if (a.length() == 6 && Character.isDigit(year)) {
return true;
} else
return false;
}
現在我停在Character.isDigit(年),因爲它返回false,它應該返回true。我打印一年只是爲了看看什麼出來,96出來就像在頂部的例子。我究竟做錯了什麼?
你有沒有*閱讀* [Charact的javadoc er.isDigit(int codePoint)'](https://docs.oracle.com/javase/8/docs/api/java/lang/Character.html#isDigit-int-)? *確定**指定的字符(Unicode代碼點)**是否是數字*。 'year'是一個數字,而不是一個Unicode代碼點。 – Andreas
就像我說過的,我對編程更新,我讀了一些東西,它說「如果字符是數字,則爲true;否則爲false」。是不是一個數字? – Sevajper
我甚至無法想象你認爲'isDigit()'會爲數字做些什麼?一個數字如何可以不是數字?此外,您只是自己說過:*「如果**字符**是數字,則爲true;否則爲false」* – Andreas