Inversão de um nome, passando o segundo informado para UpperCase - JAVA
Olá, eu estou precisando saber a sintaxe em java da inversão de uma "frase", passando a ultima das palavras para maiuscula e separando por virgula, como o referencial de um autor, por exemplo: Machado de Assis --> ASSIS, machado.
Seria isto, desde já, obrigado!
Seria isto, desde já, obrigado!
José
Curtidas 0
Respostas
Nathália Hirth
26/03/2019
String nome = "José Geraldo da Silva Camargo";
String[] palavras = nome.split("\\\\s+"); //Separa as palavras por espaço e salva num array de String.
int tamanho = palavras.length; // Pega o tamanho do array.
String referencia = palavras[tamanho-1].toUpperCase() + ", "; // Coloca o ultimo sobrenome em letras maiúsculas
for(int i=0; i<=tamanho-2; i++) {
referencia += palavras[i] + " "; // escreve o restante do nome
}
System.out.println(referencia);
String[] palavras = nome.split("\\\\s+"); //Separa as palavras por espaço e salva num array de String.
int tamanho = palavras.length; // Pega o tamanho do array.
String referencia = palavras[tamanho-1].toUpperCase() + ", "; // Coloca o ultimo sobrenome em letras maiúsculas
for(int i=0; i<=tamanho-2; i++) {
referencia += palavras[i] + " "; // escreve o restante do nome
}
System.out.println(referencia);
GOSTEI 0
Nathália Hirth
26/03/2019
Corrigindo a minha resposta, na segunda linha são apenas 2 barras invertidas no split.
String[] palavras = nome.split("\\\\s+");
String[] palavras = nome.split("\\\\s+");
String nome = "José Geraldo da Silva Camargo";
String[] palavras = nome.split("\\\\\\\\s+"); //Separa as palavras por espaço e salva num array de String.
int tamanho = palavras.length; // Pega o tamanho do array.
String referencia = palavras[tamanho-1].toUpperCase() + ", "; // Coloca o ultimo sobrenome em letras maiúsculas
for(int i=0; i<=tamanho-2; i++) {
referencia += palavras[i] + " "; // escreve o restante do nome
}
System.out.println(referencia);
String[] palavras = nome.split("\\\\\\\\s+"); //Separa as palavras por espaço e salva num array de String.
int tamanho = palavras.length; // Pega o tamanho do array.
String referencia = palavras[tamanho-1].toUpperCase() + ", "; // Coloca o ultimo sobrenome em letras maiúsculas
for(int i=0; i<=tamanho-2; i++) {
referencia += palavras[i] + " "; // escreve o restante do nome
}
System.out.println(referencia);
GOSTEI 0