System.out.print("Informe o No inicial: ");StringxNoInicial=teclado.readLine();arestaAtual.setNoInicial(xNoInicial);
mas acusa o seguinte erro:
setNoInicial(No) in Aresta cannot be applied to (java.lang.String)
imagino porque estou lendo uma variável String… e jogando
ela numa variavel do tipo Objeto (no)…
desculpem… mas estou somente a 02 semanas… programando
e já tenho esse problema para resolver… obrigado a todos
que leram essa mensagem… e especialmente para quem responder…
Somuca, posta aí o código do teu método setNoInicial() …
Assim vai ficar fácil resolver…
T+
S
SomucaPJ
Segue o código da classe No !!
importjava.util.ArrayList;/** * Classe NO * * @author Rogério e Jean * @version 1.10 */publicclassNo{//VariáveisprivateStringnomeNo;privatedoublecusto;privateStringtipo;privateArrayListarestaNo=newArrayList();//ConstrutorpublicNo(){nomeNo=null;custo=0;tipo=null;}publicNo(StringnovoNomeNo,doublenovoCusto,StringnovoTipo){nomeNo=novoNomeNo;custo=novoCusto;tipo=novoTipo;}//MétodospublicbooleansetNomeNo(StringnovoNomeNo){nomeNo=novoNomeNo;returntrue;}// informa Custo (Maior ou igual a zero)publicbooleansetCusto(doublenovoCusto){if(novoCusto>=0){custo=novoCusto;returntrue;}else{returnfalse;}}// informa Tipo ("inicial","intermediario","final")publicbooleansetTipo(StringnovoTipo){if(novoTipo.equals("inicial")||novoTipo.equals("intermediario")||novoTipo.equals("final")){tipo=novoTipo;returntrue;}else{returnfalse;}}publicStringgetNomeNo(){returnnomeNo;}publicdoublegetCusto(){returncusto;}publicStringgetTipo(){returntipo;}publicArrayListgetArestaNo(){returnarestaNo;}// Adiciona publicbooleanadicionaArestaNo(ArestanovaAresta){arestaNo.add(novaAresta);returntrue;}}
S
SomucaPJ
desculpe… mas está na classe aresta… segue !!
publicclassAresta{//VariáveisprivateStringnomeAresta;privatedoublecusto;privateNonoInicial;privateNonoFinal;//ConstrutorpublicAresta(){custo=0;noInicial=null;noFinal=null;}publicAresta(StringnovoNomeAresta,doublenovoCusto,NonovoNoInicial,NonovoNoFinal){nomeAresta=novoNomeAresta;custo=novoCusto;noInicial=novoNoInicial;noFinal=novoNoFinal;}//MétodospublicbooleansetNomeAresta(StringnovoNomeAresta){nomeAresta=novoNomeAresta;returntrue;}// informa Custo (Maior ou igual a zero)publicbooleansetCusto(doublenovoCusto){if(novoCusto>=0){custo=novoCusto;returntrue;}else{returnfalse;}}// Nó IncialpublicbooleansetNoInicial(NonovoNoInicial){noInicial=novoNoInicial;returntrue;}// Nó FinalpublicbooleansetNoFinal(NonovoNoFinal){noFinal=novoNoFinal;returntrue;}publicStringgetNomeAresta(){returnnomeAresta;}publicdoublegetCusto(){returncusto;}//Devolve o atributo no inicial do objeto em uso.publicNogetNoInicial(){returnnoInicial;}//Devolve o atributo no final do objeto em uso.publicNogetNoFinal(){returnnoFinal;}}
S
SomucaPJ
mas como faço para guardar o valor digitado do noInicial ???
F
FelipePJ
tenta isso:
System.out.print("Informe o nome do No inicial: ");StringxNoInicialNome=teclado.readLine();System.out.print("Informe o custo do No inicial: ");doublexNoInicialCusto=Double.parseDouble(teclado.readLine());System.out.print("Informe o tipo do No inicial: ");StringxNoInicialTipo=teclado.readLine();arestaAtual.setNoInicial(newNo(xNoInicialNome,xNoInicialCusto,xNoInicialTipo));
N
New_Radical
Nâo está faltando alguma coisa?! :roll:
Onde que está o método setNoInicial()???
N
New_Radical
O método setNoInicial recebe um objeto do tipo No, e não do tipo String.