Pegando parte da String e convertendo para int

10 respostas
W

[RESOLVIDO]
Olá pessoal, já dei uma olhada na API mas não entendi. Como faço para pegar por exemplo somente a parte de numero da String “AAA14586” sendo que as letras sempre vão permanecer 3 letras e sempre no inicio mas os numeros podem aumentar ou diminuir os caracteres - Depois pegar esses numeros e converter para String

desde já agradeço

10 Respostas

leoviniga

Pra pegar só parte da String você usa o metodo substring:

NomeDaString.substring(int1,int2);

int1 é onde vai começar a cortar
int2 é o até onde você quer ir (se for até o final não passe esse parâmetro)

quando você tiver a String que queria use parseInt…

Integer.parseInt(SuaString);

Edit: esquece o parseInt li errado e achei que você queria trandforma-los em int…como esse não é o caso não precisa…o que você pegou com o substring já é uma String

Rafael_Mesquita_Mour

leoviniga:
Pra pegar só parte da String você usa o metodo substring:

NomeDaString.substring(int1,int2);

int1 é onde vai começar a cortar
int2 é o até onde você quer ir (se for até o final não passe esse parâmetro)

quando você tiver a String que queria use parseInt…

Integer.parseInt(SuaString);

Edit: esquece o parseInt li errado e achei que você queria trandforma-los em int…como esse não é o caso não precisa…o que você pegou com o substring já é uma String


Lembrando que o método substring têm sua posição inicial em 0, como as matrizes, então se a sua String tiver 5 caracteres, para pegar do primeiro até o terceiro caractere você usa:

substring(0,2);


Depois pegar esses numeros e converter para String

Não entendi por que você quer convertê-los novamente para String se eles já são uma String…

leoviniga

Rafael Mesquita Moura:

Lembrando que o método substring têm sua posição inicial em 0, como as matrizes, então se a sua String tiver 5 caracteres, para pegar do primeiro até o terceiro caractere você usa:

substring(0,2);


bem lembrado

W

Valeu leoviniga

Resolvido o problema - Obrigado

P

Vale lembrar que a assinatura do substring permite passar só o valor inicial, partindo dele até o final da string. Como você disse que o tanto de caracter numerico pode aumentar talvez seja util

W

Já deu certo o que eu queria, fiz um teste

public class Teste {

    /**
     * @param args
     */
    public static void main(String[] args) {
	String crm = "CRM12568";
	String saida = crm.substring(3);
	int saidaint = Integer.parseInt(saida);
	

	System.out.println("Saida Inteiro: "+saidaint);
	
	//Saida foi 12568 convertido para inteiro


    }

}
P

se puder editar o titulo do topico com a tag [RESOLVIDO] ajuda a galera que fica ajudando ae.

W

Não entendi - como fazer isso para ficar com resolvido?

Rafael_Mesquita_Mour

God…

Seguinte… basta você clicar em Editar no seu primeiro POST, ai você coloca antes de tudo [RESOLVIDO]

;D

drigo.angelo

Só mais uma coisinha…

Caso a quantidade de caracteres for variável, você pode fazer assim:

String crm = "CRM12A56ASD896"; String saida = crm.replaceAll("\D", ""); //Troca tudo que não for dígito por vazio int saidaint = Integer.parseInt(saida)

Criado 13 de janeiro de 2011
Ultima resposta 14 de jan. de 2011
Respostas 10
Participantes 5