Olá, pessoal.
como é que faz para retornar o conteudo de uma String.
/* 7. Elabore um programa utilizando procedimento e/ou funções que, a partir de umvetor com, no máximo, 10 nomes de cidades, possibilite:a. A digitação dos elementos do vetorb. A busca uma determinada cidadec. A retirada de uma cidade da lista (verificando primeiro se ela estácadastrada) */packagequestao07;importjava.util.Scanner;/** * @author daniel */publicclassMain{publicstaticvoidmain(String[]args){// TODO code application logic hereScannerx=newScanner(System.in);// vetor recebe os nomes das cidadesStringcidade[]=newString[3];for(inti=0;i<cidade.length;i++){System.out.println("Informe nome da cidade "+(i+1));cidade[i]=x.next();}System.out.println("Informe nome da cidade para busca ");Stringprocura=x.next();//resultadoSystem.out.println(busca_nome(procura));// problema está aqui.. nao sei retornar String}publicstaticStringbusca_nome(Stringcidade,Stringprocura){if(procura.equals(cidade)){procura=cidade;}return(procura);}}// fim da classe main
Irei passar somente a lógica, vc tem que tentar para aprender.
Recomendo criar uma classe cidade. Nao tenha medo, use e abuse de java, aproveite os conceitos orientado a objetos para tal tipo.
Utilize de metodos get and set.
Nome, Estado, Pais.
Ira criar um novo objeto Cidade na classe main.
Vector<Cidade> Ex.
A busca deve ser feita de forma a percorrer todos os objetos que estão no seu vetor de objetos Cidade(Nome).
para String, Utilize equals.
dfarias
o erro persiste
/* 7. Elabore um programa utilizando procedimento e/ou funções que, a partir de umvetor com, no máximo, 10 nomes de cidades, possibilite:a. A digitação dos elementos do vetorb. A busca uma determinada cidadec. A retirada de uma cidade da lista (verificando primeiro se ela estácadastrada) */packagequestao07;importjava.util.Scanner;/** * @author daniel */publicclassMain{publicstaticvoidmain(String[]args){// TODO code application logic hereScannerx=newScanner(System.in);// vetor recebe os nomes das cidadesStringcidade[]=newString[3];for(inti=0;i<cidade.length;i++){System.out.println("Informe nome da cidade "+(i+1));cidade[i]=x.next();}System.out.println("Informe nome da cidade para busca ");Stringprocura=x.next();//resultadobusca_nome(cidade,procura);// problema está aqui.. nao sei retornar String}publicstaticvoidbusca_nome(Stringcidade,Stringprocura){if(procura.equals(cidade)){procura=cidade;}System.out.println(procura);}}// fim da classe main
>
mateuscs
dfaria
vc nao fez uma parte do que disse.
Posso te ajudar se começar a realmente programar em Java.
dfarias
mateuscs, e ainda não cheguei nessa parte de criar classes. Caso eu utilize uma classe diferente o professor não vai aceitar.
Eu devo fazê-la utilizando funções ou procedimentos.
Obrigado pela atenção
mateuscs
Qual materia que você esta estudando atualmente ?
dfarias
cara… Java básico.
Funções e procedimentos .
mateuscs
Beleza kara, desculpe, mais enganei-me, pensei que era OO.
Vou fazer um algortimo pra ti aqui.
leandronsp
seu problema não é não saber retornar uma string
um problema é que você definiu um método de busca que recebe 2 argumentos mas você está passando apenas 1. Mas acredito que foi um erro quando você colou na caixa de mensagem
outro problema é que você deve passar o array de String pro método de busca, e dentro do método, iterar por este array verificando se a cidade buscada está contida nele. Algo assim:
packagefunc;importjava.util.Scanner;publicclassMainClass{/** * @param args */publicstaticvoidmain(String[]args){// TODO Auto-generated method stubinti=0;inty=0;String[]cidade=newString[10];Stringpesquisa;String[]nomePesquisa=newString[10];Scannerscan=newScanner(System.in);for(i=0;i<10;i++){System.out.println("Digite o nome da cidade número "+i+": ");cidade[i]=scan.nextLine();}for(i=0;i<10;i++){System.out.println(cidade[i]);}System.out.println("Digite a cidade que deseja pesquisar");pesquisa=scan.nextLine();for(i=0;i<10;i++){if(pesquisa.equals(cidade[i])){y=y+1;nomePesquisa[i]=cidade[i];}else{nomePesquisa[i]="";}}if(y==0){System.out.println("Nao foi possivel encontrar nenhuma cidade com o nome da busca");}else{System.out.println("Numero Cidades encontradas "+y);for(i=0;i<nomePesquisa.length;i++){if(nomePesquisa[i].equals(null)){nomePesquisa[i]="";}else{System.out.println(nomePesquisa[i]);}}}}}
ESTUDE, NAO COPIE.>
mateuscs
Esta no básico, recomendo debugar para ver o que acontece com cada informação.
Como esta sendo tratado os nulls do vetor,
não fiz vetores dinamicos para você aprender como funciona.
Como disse, nao copie, debugue desde a primeira sysout ate o final da classe para melhor entendimento.
dfarias
vlw cara!!!
:arrow: obrigado !
mateuscs
Por nada, estamos a disposição.
Desculpe a critica, mais tomare que soe construtiva.
Parceiro(a), POO, em Java é ótimo pra aprendizagem, vc pode fazer metodos, funcoes e outros, mais experimente as vantagens de orientada a objetos.
Comente com seu professor se pode implementar esses exercicios utilizando da forma OO.
A forma de programação que fizemos no exemplo, não tem orientação nenhuma(de certa forma), e nao é tão apropriado em Java utlizar desse meio de construção.