Inserir hífen[Resolvido]

5 respostas
M

Pessoal, tenho que fazer um exercício, que deve receber somente números, e deve imprimir o número com um hífem, é possível fazer isso com o replace ou numberformat?, alguma forma que não use máscaras, pois ainda não aprendi isso no livro...

Ex:
Úsuario informa o número 12345678
O aplicativo imprime o número: 12345-678

import java.io.PrintStream;
import java.util.Scanner;

	public class Exercicio0501 {
		public static void main(String args[]) {
		PrintStream saida = System.out;
		Scanner scan = new Scanner(System.in);
	
		saida.print("\nInforme seu CEP(só números):\t");
		int cep = scan.nextInt();
		
		saida.print("CEP informado:\t\t\t" + cep);
	}
}

5 Respostas

ViniGodoy

Veja o método substring da classe String.

J

Acho que assim dá:

import java.io.PrintStream;  
import java.util.Scanner;  
  
    public class Exercicio0501 {  
        public static void main(String args[]) {  
        PrintStream saida = System.out;  
        Scanner scan = new Scanner(System.in);  
      
        saida.print("\nInforme seu CEP(só números):\t");  
        int cep = scan.nextInt();  

        String c = "" + cep;
        String a = c.substring(0, 4);
        String b = c.substring(5, 7);
        
        c = a + "-" + b;

        saida.print("CEP informado:\t\t\t" +c);  
    }  
}
M

Opss. Edit

Não está dando certo, ele está funcionando como se fosse um "replace", pois ele elimina um número e acrescenta o hífen... gerando um resultado final incorreto =/
-----------------------------------

Edit 2

Javax2011:
Acho que assim dá:
import java.io.PrintStream;  
import java.util.Scanner;  
  
    public class Exercicio0501 {  
        public static void main(String args[]) {  
        PrintStream saida = System.out;  
        Scanner scan = new Scanner(System.in);  
      
        saida.print("\nInforme seu CEP(só números):\t");  
        int cep = scan.nextInt();  

        String c = "" + cep;
        String a = c.substring(0, 4);
        String b = c.substring(5, 7);
        
        c = a + "-" + b;

        saida.print("CEP informado:\t\t\t" +c);  
    }  
}

Consegui o jeito certo pro meu caso era assim:

String c = "" + cep;  
        String a = c.substring(0, 5);
        String b = c.substring(5, 8);  
          
        c = a + "-" + b;
J

Perdão pelo descuido! :lol:

Vingdel

Edita o título do tópico com um [RESOLVIDO] no início, amigão!

Abraço!

Criado 12 de outubro de 2011
Ultima resposta 12 de out. de 2011
Respostas 5
Participantes 4