Ciao a tutti! Stavolta non ho sbagliato gli indici è un pò più grave la situzione! xD
Sto facendo un programma in java che date n stringhe in input le salva in un vettore di String, salva ogni carattere delle stringhe in una matrice e la stampa in verticale. Il problema è che mi solleva la seguente eccezione:
"Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(String.java:694)
at Parole_verticali.main(Parole_verticali.java:25)"
Vi posto il codice che ho scritto:
Come posso risolvere?codice:import java.util.*; public class Parole_verticali { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n, i, j, maxlung = 0; System.out.println("Quante frasi vuoi mettere:"); n = in.nextInt(); String[] frase = new String[n]; for(i = 0; i < n; i++) { frase[i] = in.nextLine(); if(frase[i].length() > maxlung) maxlung = frase[i].length(); } char Matrix[][] = new char[maxlung][n]; for(i = 0;i < Matrix.length; i++){ for(j = 0; j < Matrix[i].length; j++) { Matrix[j][i] = frase[i].charAt(j); } } for(i = 0;i < Matrix.length ;i++){ for(j = 0; j < Matrix[i].length; j++) { System.out.printf("%c ", Matrix[i][j]); System.out.println(); } } } }

Rispondi quotando