Pessoal criei um simples analisador com a finalidade de verificar a existencia de comentarios multi linha, abaixo o codigo:
public class CharScanner {
private char[] c;
public CharScanner(char[] c) {
this.c = c;
}
public void isML_COMMENT() {
for(int i=0; i < c.length; i++){
if (c[i] == '/') {
i++;
if (c[i] == '*') {
i++;
StringBuffer buf = new StringBuffer();
while (c[i] != '*' && i < c.length-1) {
buf.append(c[i]);
i++;
}
if (c[i] == '*') {
i++;
if (c[i] == '/') {
System.out.println(buf.toString()+"\n");
} else if (c[i] != '/') {
System.out.println("\nUnexpected char
O problema esta na string em que eu coloco os comentarios, quando ela possui espaços em branco em suas extremidades, o codigo funciona corretamente, mas quando não há espaços ele lança um erro (ArrayIndexOutOfBoundsException), não estou conseguindo entender porque esta acontecendo isso.
Se alguem puder me apontar onde esta o erro, agradeço.
/
O problema esta na string em que eu coloco os comentarios, quando ela possui espaços em branco em suas extremidades, o codigo funciona corretamente, mas quando não há espaços ele lança um erro (ArrayIndexOutOfBoundsException), não estou conseguindo entender porque esta acontecendo isso.
Se alguem puder me apontar onde esta o erro, agradeço.
in line: "
+ i);
}
} else if (c[i] != '*') {
System.out.println("\nUnexpected char
O problema esta na string em que eu coloco os comentarios, quando ela possui espaços em branco em suas extremidades, o codigo funciona corretamente, mas quando não há espaços ele lança um erro (ArrayIndexOutOfBoundsException), não estou conseguindo entender porque esta acontecendo isso.
Se alguem puder me apontar onde esta o erro, agradeço.
*
O problema esta na string em que eu coloco os comentarios, quando ela possui espaços em branco em suas extremidades, o codigo funciona corretamente, mas quando não há espaços ele lança um erro (ArrayIndexOutOfBoundsException), não estou conseguindo entender porque esta acontecendo isso.
Se alguem puder me apontar onde esta o erro, agradeço.
in line: " + i);
}
}
}
}
}
public static void main(String[] args) {
String cadeia = " /* J2SE */\n/* J2EE\n J2ME */ ";
CharScanner scanner = new CharScanner(cadeia.toCharArray());
scanner.isML_COMMENT();
}
}
O problema esta na string em que eu coloco os comentarios, quando ela possui espaços em branco em suas extremidades, o codigo funciona corretamente, mas quando não há espaços ele lança um erro (ArrayIndexOutOfBoundsException), não estou conseguindo entender porque esta acontecendo isso.
Se alguem puder me apontar onde esta o erro, agradeço.