Not a statement Erro ao copilar

8 respostas
K

Gent, boa tarde.
No meu código quando mando copilar, aparece um mont de erros.
O código é bem pequeno… acredito que tudo começa no primeiro problema que acaba ocasioando todos os outros.
No caso, o erro na qual me refiro é o “not a statement”.
Ja pesquisei aqui no forum e aparece muitas coisas relacionadas apenas a “statement” e não me ajudou muito…

Segue o código:

import javax.swing.JOptionPane;
public class prova2
{	public static void main(String[]args)
	{	String[] palavras ={"douglas", "getulio", "douglas"};
		String[][] final=Biblioteca.nao_repete(palavras);
		int linha, coluna;
		linha =	final.length;
		coluna=final[0].length;
		
		for(int i=0; i<linha; i++)
		{	for(int j=0; j<coluna; j++)
			{	System.out.println(final[i][j]);
			}
		}
	}
}
No caso, estou usando uma biblioteca que fiz, em outro código deu certo

A função armazenada na biblioteca tbm funciona perfeitamente.

os erros que aparecem são esses:

[color=red]

prova2.java:5: not a statement

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:5: ; expected

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:5: illegal start of type

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:5: ; expected

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:5: illegal start of expression

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:5: ; expected

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:5: not a statement

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:5: ; expected

String[][] final=Biblioteca.nao_repete(palavras)

^

prova2.java:7: illegal start of expression

linha = final.length;

^

prova2.java:7: illegal start of expression

linha = final.length;

^

prova2.java:8: illegal start of expression

coluna=final[0].length;

^

prova2.java:8: illegal start of expression

coluna=final[0].length;

^

prova2.java:8: ; expected

coluna=final[0].length;

^

prova2.java:8: illegal start of expression

coluna=final[0].length;

^

prova2.java:8: ; expected

coluna=final[0].length;

^

prova2.java:8: not a statement

coluna=final[0].length;

^

prova2.java:12: illegal start of expression

{       System.out.println(final[i][j]);

^

prova2.java:12: not a statement

{       System.out.println(final[i][j]);

^

prova2.java:12: ; expected

{       System.out.println(final[i][j]);

^

19 errors

[/color]

Como disse… acredito que o erro começa na linha 5.
por favor… da um help

8 Respostas

Giulliano

que tal dar um nome que seja diferente das palavras reservados do java…tipo final

String[][] arrayFinal =Biblioteca.nao_repete(palavras);
marcosharbs

cara vc definiu o nome de uma das suas variaveis como final, final é uma palavra reservada do java, vc não pode usar ela como nome de variavel.

furutani

Olá

final é uma palavra reservada, não pode ser usada como nome de variavel
Abaixo eu troquei final por palavrasNaoRepetidas

public class prova2 {
	public static void main(String[]args)
	{	String[] palavras ={"douglas", "getulio", "douglas"};
		String[][] palavrasNaoRepetidas = Biblioteca.nao_repete(palavras);
		int linha, coluna;
		linha =	palavrasNaoRepetidas.length;
		coluna = palavrasNaoRepetidas[0].length;
		
		for(int i=0; i<linha; i++)
		{	for(int j=0; j<coluna; j++)
			{	System.out.println(palavrasNaoRepetidas[i][j]);
			}
		}
	}
}
K

Nossa gente… malz por fazer vcs perderem tempo com uma dessas… o.O
E nem me toquei que o nome dela até ficou diferente… sinalizando uma palavra reservada o.O

Não sabia que final era uma palavra reservada do java… eu ja tinha olhado a lista mas num me lembro de ter reparado nessa heheh

Funcionou… obrigado mesmo ^^

o/

T

Dica: use uma IDE (como o Eclipse ou o NetBeans) ou um editor que conheça a linguagem Java (como o Notepad++) para digitar seus programas. Logo de cara, pela cor da palavra, você já percebe que há alguma coisa errada. No seu caso, a palavra “final” iria ficar com a mesma cor das palavras-chave (“if”, “while” etc.).

furutani

Acontece nas melhores familias
Nesse link tem uma lista com palavras reservadas.
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/_keywords.html

T

O legal de usar uma IDE é que ela normalmente sabe até um pouco mais que sua documentação de referência.

Em C++, eu estava usando as palavras “array” e “ref” e descobri que elas são novas palavras-chave se eu usar C++/CLR. A IDE me avisou pondo essas palavras como se fossem palavras-chave, o que me ajudou na hora de passar meu programa C++ para C++/CLR.

furutani

Olá

Com certeza o uso de uma IDE ajuda muito a solucionar um erro. É ainda mais rápido solucionar erros de sintaxe com uma IDE.

Criado 8 de dezembro de 2008
Ultima resposta 8 de dez. de 2008
Respostas 8
Participantes 5