String[] splittedData = data.split("\s+");
answerString = data + " :";
answerString = answerString +
wordChecker.imperfectPalindrome(splittedData[0]);
answerString = answerString +
wordChecker.imperfectPalindrome(splittedData[1]);
answerString = answerString +
wordChecker.superAnagrams(splittedData[0], splittedData[1]);
对于splittedData[1]
,IDE抛出一个ArrayIndexOutOfBoundsException
。这是因为数组声明中的错误还是其他原因?
您的splittedData
数组将使用所需的确切长度来存储.split
的结果。如果输入的data
不包含任何空格,则splittedData
的长度为1。如果输入的data
为空,则其长度为0。
因此,如果在那之后您尝试访问splittedData[1]
,那么索引将确实超出的范围
澄清
在Java中,数组索引是从0(包括0(到数组长度(不包括(的