String e substring

8 respostas
L

Tenho este código abaixo, só que além de trazer as 3 primeiras letras de meu nome, eu gostaria tambem de trazer as 3 primeiras letras do meu sobrenome, mas qual comando usar se eu nao sei por exemplo quantos caracters tem seu nome inteiro.

no aguardo,
valeu

public class NomeStarWar

{

public static void main(String arg[]){

String nomeCompleto;
System.out.println("digite o nome completo");
nomeCompleto = Keyboard.readString();

    
nomeCompleto=nomeCompleto.substring(0,3);


System.out.println(nomeCompleto);
}

}

8 Respostas

L

Tenta assim

String v[] = nomeCompleto.split( " " );

assim vc pode pegar tudo separadinho.

L

Nao funcionou, vou tentar explicar melhor.
Ex: digite o nome completo:
Fulano da costa oliveira
Este código vai me trazer as 3 primeira letra - Ful
Mas tambem quero as 3 primeiras letras do sobrenome - oli
aqui eu tenho o tamanho poderia contar e dizer qual posicao imprimir, mas se vc colocar o seu nome completo a posicao indicada nao fecha.

L

Nao funcionou, vou tentar explicar melhor.
Ex: digite o nome completo:
Fulano da costa oliveira
Este código vai me trazer as 3 primeira letra - Ful
Mas tambem quero as 3 primeiras letras do sobrenome - oli
aqui eu tenho o tamanho poderia contar e dizer qual posicao imprimir, mas se vc colocar o seu nome completo a posicao indicada nao fecha.

L

Acho que pode funcionar sim, com String v[] = nomeCompleto.split( " " );

Sendo:

v[0] ->> fulano
v[1] ->> da
v[2] ->> costa
v[3] ->> oliveira

dai va da um v[0].substring( 0, 3 );

isso ainda não resolve seu problema???

L

desculpe pela demora para entender, funcionou, mas neste exemplo eu sei que o nome dele vai de v[0] a v[3], e se o nome completo for de 5 posicoes por exemplo, eu queria que ele possa verificar o tamanho do nome, nao importando quantas posicoes e trazer apenas as 3 ultimas posicoes do ultimo nome dele.

R

Deixe eu me meter um pouco, naum tem jeito de verificar na hora que chegar em um espaco em branco? Pois depois vc ja sabe que vem um nome, certo?

Abraços

L

isso mesmo, pelo menos eu acho que deveria ser desta forma, mas não sei qual comando utilizar e de que forma.

valeu

A

Vc soh quer os 3 primeiros caracteres do primeiro e do ultimo nome, correto?

uma gambiarra:
String nomeCompleto = Keyboard.readString();
String[] array = nomeCompleto.split(" ");

String firstName = array[0].substring( 0, 3 );
int lastIndex = array.length - 1;
String lastName = array[lastIndex].substring( 0, 3 );

System.out.println("Primeiro Nome: " + firstName);
System.out.println("Ultimo Nome: " + lastName);

[]'s

Criado 18 de outubro de 2004
Ultima resposta 19 de out. de 2004
Respostas 8
Participantes 4