Я хочу, чтобы фамилия была напечатана с там, где первая буква была заглавной, но я получил всю фамилию, заглавную. Я хочу, чтобы пользователю ввести свое имя, как Jordan Торрес и вернуть Торрес, J.Заглавие: Первое письмо от фамилии
import java.util.*; // for Scanner
public class ProcessName { public static void main(String[] args) { String name;
Scanner console = new Scanner(System.in);
System.out.print("Type your name: "); //send to user
name = console.nextLine();
String[] nameArray = name.split(" ");//split string into array
String firstName = name.valueOf(name.charAt(0)).toUpperCase(); //get first letter
String lastName = name.substring(name.indexOf(" ") + 1).toUpperCase();
String myName = lastName + ", " + firstName;//give last and first name
System.out.println("Your name is: " + myName + ".");
Мой выход TORRES, J.
Так в чем проблема? Если вы хотите, чтобы это не было «TORRES», а вместо «Torres», то просто применяйте '.toUpperCase()' к первой букве, вы применяете его ко всей подстроке. –
Я хочу, чтобы первая буква фамилии была заглавной, а не все. – Jordan
все в порядке, тогда что, если они просто ставят торр без капитала? то его справедливые торры. как я могу это сделать, чтобы первая буква всегда заглавная буквами для фамилии? – Jordan