3 回答

TA貢獻(xiàn)1833條經(jīng)驗(yàn) 獲得超4個(gè)贊
您需要檢查 dateofbirth 格式是否正確,并通過(guò)檢查數(shù)組長(zhǎng)度來(lái)防止異常。
String [] dob= dateofbirth.split("/");
if(dob != null && dob.length >=3){
System.out.println(""+dob[0]);
System.out.println(""+dob[1]);
System.out.println(""+dob[2]);
}

TA貢獻(xiàn)1808條經(jīng)驗(yàn) 獲得超4個(gè)贊
似乎數(shù)組 dob 只有一個(gè)元素,其中沒(méi)有索引 1。這就是為什么您會(huì)看到j(luò)ava.lang.ArrayIndexOutOfBoundsException: 1 索引從 0 開(kāi)始。
使用循環(huán)來(lái)導(dǎo)航數(shù)組,以便您可以根據(jù)數(shù)組大小動(dòng)態(tài)處理用例。舉個(gè)例子,見(jiàn)下文。
例子
String input = "abc/def/ghi/jkl";
String[] matrix = input.split("/");
/* Print each letter of the string array in a separate line. */
for(int i = 0; i < matrix.length; ++i) {
System.out.println(matrix[i]);
}
這將給出如下輸出,
abc
def
ghi
jkl
這樣可以避免遇到j(luò)ava.lang.ArrayIndexOutOfBoundsException:

TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個(gè)贊
您應(yīng)該使用數(shù)組索引越界異常嘗試捕獲。
try {
String [] dob= dateofbirth.split("/");
System.out.println(""+dob[0]);
System.out.println(""+dob[1]);
System.out.println(""+dob[2])
catch(ArrayIndexOutOfBoundsException exception) {
handleTheExceptionSomehow(exception);
}
添加回答
舉報(bào)