Inicializar variável

2 respostas
S
public class Data {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Scanner entrada = new Scanner(System.in);
		  
		  System.out.println("informe a data (dia, mes e ano)");
		  	  for(int i = 0; i < 3; i++){
			  String data = entrada.nextLine();
		     if(i != 2)
		        data = data + "/";
		      
		  }
		  
		  System.out.println("Data: " + data );
		   
}
	}

boas.. eu tentei compilar esse exemplo do cassio e o compilador requer que se inicialize a string data, e ao colocar a string data = null ; depois no for ficamos com o problema do mais igual, ou seja.. ele vai concatenar os valores inseridos com o null e no println vai vai mandar o null junto com a data.. como é k se resolve este problema ?

2 Respostas

DirceuSobrinho

Saunde, acho que o maior problema seja pq a variavel data, é uma variavel local, e so existira dentro do for e vc faz uma chamada desta variavel fora do for, ai a solucao é declarar o String data fora do for, e inicializa-lo com o valor igual a “” para nao aparecer null quando usar System.out.println

e com esse: String data = entrada.nextLine(); você perderá os valores inicialmente digitados, tera apenas o ultimo valor, logo data = data + entrada.nextLine() resolve

e segue-se abaixo o codigo que acho q deva rodar blz

public class Data { 

	
	/** 
	    * @param args 
	    */ 
	public static void main(String[] args) { 
	      Scanner entrada = new Scanner(System.in); 
	         System.out.println("informe a data (dia, mes e ano)"); 
	            String data = ""; 
	         	for(int i = 0; i < 3; i++){ 
	            	 data = data + entrada.nextLine(); 
	            	 if(i != 2) 
	            		 data = data + "/"; 
	            
	        } 
	        
	        System.out.println("Data: " + data ); 
	          
	} 
	   }

Att, Dirceu

S

muito obrigado…

Criado 14 de abril de 2006
Ultima resposta 14 de abr. de 2006
Respostas 2
Participantes 2