Dados não são exibidos no print

4 respostas Resolvido
M

Não consigo inserir dados em nome do titular e nem fazer a saída dele.

package EXFIX1;
import java.util.Scanner;

public class teste_conta {
public static void main(String[] args) {
    Scanner scan= new Scanner(System.in);
        conta c = new conta();
        
        System.out.println("Digite o Numero : ");
        c.setNumero(scan.nextInt());
        System.out.println("Digite o Saldo : ");
        c.setSaldo(scan.nextDouble());
        System.out.println("Digite o Nome do titular : ");
        c.setNome_titular(scan.nextLine());
        System.out.println("Numero "+c.getNumero());
        System.out.println("Saldo "+c.getSaldo());
        System.out.println("Nome "+c.getNome_titular());       
    }
    
}

4 Respostas

raphaeloneves

Posta a classe conta, por favor.
Aproveitando a mensagem, apesar de não ser algo obrigatório, é uma boa prática seguir algumas convenções, como:

=> Nome das classes devem ser em formato CamelCase. Ex: TesteConta
=> Nome de atributos sem separadores, iniciando com a primeira letra em minúsculo e as demais palavras, se houver, em letra maiúscula. Ex: nomeTitular

Posta a classe Conta que fica mais fácil ajudar, uma vez que a descrição do seu problema está diretamente ligada ao estado do atributo de nome do titular.

Aguardo.

M

segue o código não consigo inserir os dados em nome titular e nem a saida dele , e outra dúvida , como faço o método sacar em boolean pois está dando erro :
Diagrama :
CONTA
-----------------------------------
-numero : int
-nome_titular:String
- saldo:double
----------------------- -----------------
+depositar(v1:double):void
+sacar(v2:double):boolean
+Métodos get(s) e set(s) dos campos

classe conta:

package EXFIX1;

public class conta {

private int numero;

private String nome_titular;

private double saldo;
public int getNumero() {
    return numero;
}

public void setNumero(int numero) {
    this.numero = numero;
}

public String getNome_titular() {
    return nome_titular;
}

public void setNome_titular(String nome_titular) {
    this.nome_titular = nome_titular;
}

public double getSaldo() {
    return saldo;
}

public void setSaldo(double saldo) {
    this.saldo = saldo;
}
public void depositar(double v1){

this.saldo=this.saldo+v1;

}
public boolean sacar(double v2) {

if(v2 > 0){

saldo -= v2;

return true;

}else{

return false;

}
}
}
classe teste:

package EXFIX1;

import java.util.Scanner;
public class teste_conta {

public static void main(String[] args) {

Scanner scan= new Scanner(<a href="http://System.in">System.in</a>);

conta c = new conta();
System.out.println("Digite o Numero : ");
    c.setNumero(scan.nextInt());
    System.out.println("Digite o Saldo : ");
    c.setSaldo(scan.nextDouble());
    System.out.println("Digite o Nome do titular : ");
    c.setNome_titular(scan.nextLine());
    System.out.println("Digite o valor do depósito: ");
    c.depositar(scan.nextDouble());
    System.out.println("Digite o valor para ser sacado : ");
    c.sacar(scan.nextDouble());
    if (c.sacar(scan.nextDouble)) {  
   System.out.println("Saque realizado com sucesso");  
}  
else {  
    System.out.println("Saldo insuficiene");  
}
        
    
    
    
    
  
    System.out.println("Valor saquado : ");
    System.out.println("Numero : "+c.getNumero());
    System.out.println("Saldo : "+c.getSaldo());
    System.out.println("Nome : "+c.getNome_titular());
    
    
    
    

}

}

raphaeloneves
Solucao aceita

Seguem as considerações:

  1. Quando vc chama o método nextLine() no setNome_titular, o scanner já passa pro próximo input. Utilize o método next() que vai resolver seu problema.

c.setNome_titular(scan.next());

  1. Corrija a assinatura do método nextDouble de dentro do if. Da forma como ele está, vai dar erro de compilação.

if (c.sacar(scan.nextDouble())) { }

Abs

M

muito obrigado amigo resolveu todos os problemas ,

Criado 22 de novembro de 2016
Ultima resposta 22 de nov. de 2016
Respostas 4
Participantes 2