java entiende la excepciónException en el hilo "principal" java.lang.ArrayIndexOutOfBoundsException: 1

En primer lugar, este problema es un problema de matriz fuera de límites.

Por ejemplo

Hay un archivo txt y necesita mostrar el contenido detrás del delimitador ----

 El código central de Java es

            FileReader fileReader=new FileReader(file);
            reader=new BufferedReader(fileReader);    //缓存类BufferedReader类构造方法
            String line;
            int i=1;
            while ((line=reader.readLine())!=null){
                String[] strs=line.split("----");
                    System.out.println(strs[1]);
            }

Se produjo un error al ejecutar el mensaje.

razón

Después de usar split para eliminar el separador, las cadenas a ambos lados del separador se colocarán en la matriz de cadenas y la primera línea de separadores no tendrá contenido después de ellas. Como resultado, no hay cadena [1] después de dividir la primera línea, es decir, la matriz está fuera de límites.

(Cuando se utiliza el método de división, cuando no hay contenido en el lado del separador, no se generará el espacio de matriz correspondiente)

String[] strs=line.split("----");

Para este código, mi modificación es agregar if para determinar la longitud de la matriz. Si la longitud de la matriz es mayor o igual a 2, continúe con el siguiente paso.

El código central modificado a continuación.

            FileReader fileReader=new FileReader(file);
            reader=new BufferedReader(fileReader);    //缓存类BufferedReader类构造方法
            String line;
            int i=1;
            int b=0;
            while ((line=reader.readLine())!=null){
                String[] strs=line.split("----");
                b= strs.length;
                if(b>=2) {
                    System.out.println(strs[1]);
            }

Para otras situaciones en las que la matriz excede los límites, se puede modificar según la situación real.

Supongo que te gusta

Origin blog.csdn.net/weixin_47406082/article/details/123547407
Recomendado
Clasificación