Tenho uma classe candidato com atributos* ( * = Me corrijam se tiver errado)
codigo
valor (String)
Fiz o seguinte:
package eleicoes;
import java.util.Scanner;
public class Eleicoes {
publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.println("Digite a quantidade de candidatos");IntegerCandidatos=Integer.parseInt(sc.nextLine());Candidato[]candidatoArray=newCandidato[Candidatos];for(inti=0;i<Candidatos;i++){System.out.println("Entre com os candidatos -> ");IntegerCodigo=Integer.parseInt(sc.nextLine());}System.out.println("Digite a quantidade de eleitores");IntegerEleitores=Integer.parseInt(sc.nextLine());Eleitor[]eleitorArray=newEleitor[Eleitores];for(inti=0;i<Eleitores;i++){System.out.println("Entre com o codigo dos eleitores");IntegercodigoEleitor=Integer.parseInt(sc.nextLine());}}
Ola,
a ideia é simular uma urna?
Vc já votou alguma vez?
P
PedroGabrielM
A ideia eh trabalahar com array
Preciso fazer este programa usando e entendendo referencias.
Eh um exercicio comum para reforcar a ideia f3 vetor
R
Rodrigo_Void
não respondeu
S
staroski
Dicas: Use nomes de variáveis que correspondam àquilo que a variável representa. Integer é diferente de int.
Não há necessidade de pôr o sufixo array ao declarar um array, geralmente se usa uma variável no plural.
packageeleicoes;importjava.util.Scanner;publicclassEleicoes{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.println("Digite a quantidade de candidatos");intquantidade=Integer.parseInt(sc.nextLine());Candidato[]candidatos=newCandidato[quantidade];for(inti=0;i<quantidade;i++){System.out.println("Digite o código do candidato:");intcodigo=Integer.parseInt(sc.nextLine());Candidatocandidato=newCandidato();candidato.setCodigo(codigo);candidatos[i]=candidato;}System.out.println("Digite a quantidade de eleitores");quantidade=Integer.parseInt(sc.nextLine());Eleitor[]eleitores=newEleitor[quantidade];for(inti=0;i<quantidade;i++){System.out.println("Digite o código do eleitor:");intcodigo=Integer.parseInt(sc.nextLine());Eleitoreleitor=newEleitor();eleitor.setCodigo(codigo);eleitores[i]=eleitor;}}}
P
PedroGabrielM
Entendi o uso de uma variavel no plural.
Queria entender esta do Integer e int , pois meu prof disse que é referncia a algo, essa minha duvida.
Ele usou Double
No outro exemplo de sala
package produtos;
import java.util.Scanner;
public class Produtos {
publicstaticfinalintARRAY_LENGTH=3;publicstaticvoidmain(String[]args){Produto[]produtoArray=newProduto[ARRAY_LENGTH];Scannerscanner=newScanner(System.in);for(inti=0;i<ARRAY_LENGTH;i++){System.out.println("Entre com o nome: ");Stringnome=scanner.nextLine();System.out.println("Entre com o preco");Doublepreco=Double.parseDouble(scanner.nextLine());produtoArray[i]=newProduto(nome,preco);}ProdutoprodutoMaisCaro=produtoArray[0];for(inti=1;i<produtoArray.length;i++){if(produtoArray[i].getPreco()>produtoMaisCaro.getPreco()){produtoMaisCaro=produtoArray[i];}}System.out.println(produtoMaisCaro);}
}
São tipos por referencia. Integer, Double, Character, etc.
P
PedroGabrielM
S
staroski
int é um tipo de dado primitivo que ocupa 32 bits (4 bytes) Integer é uma classe que encapsula um int.
P
PedroGabrielM
Vou comecar de novo! kkk
P
PedroGabrielM
Tive esclarecimento com o professor de algumas duvidas, ele ainda fez melhor, mostrou alguns pontos importantes.
Faz todo o sentido o int, int é um tipo primitivo, e Integer é um tipo por referencia.
package correcao;
import java.util.Scanner;
public class Correcao {
privatestaticScannersc=newScanner(System.in);privatestaticCandidato[]candidatoArray;privatestaticString[]votoArray;publicstaticvoidmain(String[]args){lerCandidatos();lerVotos();contarVotos();CandidatocandidatoVencedor=candidatoArray[0];candidatoVencedor=encontrarVencedor(candidatoVencedor);mostrarResultado(candidatoVencedor);}privatestaticvoidmostrarResultado(CandidatocandidatoVencedor){System.out.println("Vencedor: ");System.out.println(candidatoVencedor);}privatestaticCandidatoencontrarVencedor(CandidatocandidatoVencedor){for(inti=1;i<candidatoArray.length;i++){if(candidatoArray[i].getVotos()>candidatoVencedor.getVotos()){candidatoVencedor=candidatoArray[i];}}returncandidatoVencedor;}privatestaticvoidcontarVotos(){for(Stringvoto:votoArray){for(Candidatocandidato:candidatoArray){if(candidato.getCodigo().equals(voto)){candidato.addVotos();break;}}//todo objeto java é herdeiro de outro}//ianserfor fo it}privatestaticvoidlerVotos()throwsNumberFormatException{System.out.println("Entre com o numero de eleitores");intquantidadeDeEleitores=Integer.parseInt(sc.nextLine());votoArray=newString[quantidadeDeEleitores];for(inti=0;i<quantidadeDeEleitores;i++){System.out.println("Entre com o voto");votoArray[i]=sc.nextLine();}}privatestaticvoidlerCandidatos()throwsNumberFormatException{System.out.println("Entre com a quantidade de candidatos");intquantidadeDeCandidatos=Integer.parseInt(sc.nextLine());candidatoArray=newCandidato[quantidadeDeCandidatos];for(inti=0;i<quantidadeDeCandidatos;i++){System.out.println("Entre com o codigo do condadato");candidatoArray[i]=newCandidato(sc.nextLine());}}