Estou começando agora em programação e levando uma surra, alguém me ajuda a identificar estes erros por favor…
Eleitor__
public class Eleitor {
private String Nome;
private String Idade;
public String getNome() {
return Nome;
}
public void setNome(String Nome) {
this.Nome = Nome;
}
public String getIdade() {
return Idade;
}
public void setIdade(String Idade) {
this.Idade = Idade;
}
public String SitEleit(){
return Idade;
}
}
Main____
import java.util.Scanner;
public class Principal {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
Eleitor eleitor = new Eleitor();
System.out.println("Nome: ");
eleitor.setNome(teclado.next());
System.out.println("Idade: ");
eleitor.setIdade(teclado.next());
System.out.println("Situação do eleitor: "+eleitor.SitEleit()){ //ERRO
if(eleitor.SitEleit()<16) //ERRO
System.out.println("não eleitor");
if((eleitor.SitEleit()>16) && (eleitor.SitEleit<65)) //ERRO
System.out.println("eleitor obrigatório");
if((eleitor.SitEleitor()>16) && (eleitor.SitEleitor()<18) || (eleitor.SitEleitor>65)) //ERRO
System.out.println("eleitor facultativo");
}
}
Cole sempre os erros nos seus posts, fica mais fácil te ajudar assim.
Vou identificar os erros neste posts, mas vou esperar você postar os erros que recebe nos outros que criou.
Erro 1: Você está abrindo chaves após uma instrução System.out.println quando na verdade deveria terminar essa instrução com ;. As chaves em Java server para delimitar um bloco de código qualquer, mas todos os métodos e inicializações de variáveis devem terminar com um ponto e virgula.
Se você apenas colocar o ; resolverá este problema. Caso se confunda com as { } você pode tirar a que vem logo após o termino do método e a penúltima que não terá problemas
Erro 2, 3 e 4: Em todos as instruções if você está tentando comprar uma String com o operador > ou <. Para ficar mais fácil já que você está iniciando modifique o tipo de sua variável "Idade" para int. Lembre-se de modificar os métodos getIdade, setIdade e SetEleit também, modificando em todos os lugares onde encontrar String para int. Utilize o método leitor.nextInt() da classe Scanner onde você lê a idade e você estará trabalhando com números inteiros ai invés de Strings, onde os operadores > e < funcionam.
Por fim lembre-se que você precisa abrir e fechar parênteses em todo método em Java. Você pode passar o que chamamos de argumentos para este método dentro destes parênteses, ou então apenas abrí-los e fechá-los "( )". Faça isso e corrigirá os erros 5 e 6.
Não vou colocar o código aqui pois como é iniciante vale apena quebrar a cabeça e tentar fazer ao invés de copiar. Qualquer outra dúvida sobre este código basta postar aqui.
EDIT:
Mais três coisas que esqueci de falar:
1 - Java é case sensitive, ou seja, diferencia maiúsculas e minúsculas.
2 - Preste atenção ao nome dos seus métodos. O método SitEleitor não existe, ele se chama SitEleit() e deve ter o () ao final.
3 - Quando você fizer todas as modificações ficará faltando 1 } ao final do seu código.
Valeu pela ajuda meu camarada, vê se é + ou - isso aí…(Tá funcionando que é uma beleza!!)
System.out.println("Situação do eleitor: "+eleitor.SitEleit());
if(eleitor.SitEleit()<16)
System.out.println(“não eleitor”);
if((eleitor.SitEleit()>16) && (eleitor.SitEleit() <65))
System.out.println("eleitor obrigatório");
else {
System.out.println("eleitor facultativo");
}