Pessoal é o seguinte estou tentando entender como usar metodos que retornem ou não valores
Se eu declarar um metodo que contenha argumentos do tipo String
public static int soma (String num1, String num2)
então quando eu chamar o metodo soma no main, quer dizer que ele vai pedir valores do tipo String??
então eu tenho que declarar argumentos do tipo que eu quero que o usuario entre com o valor???
e sempre que meu metodo tiver return ele sempre, em qualquer caso, tera que terminar com o metodo return()???
primeiro você declarou o seu método soma utilizando dois parâmetros do tipo String
para chamar o método soma em main você terá de fornecer dois valores para poder executar o método soma
esses valores são os argumentos que você está passando para que o método seja executado
eles devem ser do mesmo tipo que você declarou quando criou o método e no caso são duas strings
eles não precisam necessariamente ser inseridos pelo usuário
um método só terá um return quando ele retornar um valor
por exemplo, um método que calcule a média de duas provas
ele recebe dois argumentos, nota1 e nota2 e retorna a media para o método que o chamou
mas por exemplo, se esse método só imprimisse as duas notas na tela, então ele não teria de retornar nenhum valor, logo você declararia esse método como void
no caso do seu método soma, ele deverá retornar um inteiro pois você declarou ele como public static int
Opa, tem toda razão, vou editar pra ficar correto
e uma dica pro faicoxim
dê uma olhada no livro do deitel que explica essa parte de métodos de uma maneira bem fácil de entender
quando eu estava estudando metodos a minha dificuldade era a de pensar…
meu metodo tem um retorno… mas retorna pra onde, porque e para que?
um exemplo seria:
private String nome;
public String retornaNome(){
return nome;
}
System.out.prinltn(retornaNome());
//é a mesma coisa de você fazer:
System.out.println(nome);
//porque o metodo te retorna a variavel String nome;
//agora... o porque de não fazer System.out.println(nome); de uma olhada em get's e set's...
mas é o que o peczenyj falou mesmo se faz sentido ou não…
um metodo que não faria sentido seria o seguinte:
public String alteraNome(String novoNome){
nome = novoNome;
return nome;
}
esse metodo esta correto? está… mas não faz sentido…
se o metodo se chama alteraNome para que iriamos querer que retorne a variavel String nome?
aí que entra o void…
public void alteraNome(String novoNome){
nome = novoNome;
}
esse metodo só faz o que diz fazer e ponto só altera a variavel e não te retorna nada…