indexOf 错误 java.lang.ArrayIndexOutOfBoundsException 异常

indexOf error java.lang.ArrayIndexOutOfBoundsException exception

我有一个包含以下值的 ArrayList:

Lista
Lista2
Lista 3

当我使用时。

pCols.indexOf("Lista")) 可以

pCols.indexOf("Lista2")) 可以

pCols.indexOf("Lista 3"))错误java.lang.ArrayIndexOutOfBoundsException异常

根据您的评论,the "Lista 3" has a space in the last char "Lista 3 ",原因很明确:

在这种情况下,List.indexOf 将 return -1。这不在数组的有效索引范围内,即 0, ..., n-1 - n 是数组的长度。

供您参考:https://developer.android.com/reference/java/util/List.html#indexOf(java.lang.Object)

解决方案显而易见:

pCols.indexOf("Lista 3 ".trim()))

trim() 将删除不需要的尾随空格。
供您参考:https://developer.android.com/reference/java/lang/String.html#trim()