Я очень новичок в Java.Я в своем первом классе Java, и мы просто работаем над основами.Я должен написать программу, которая предлагает пользователю ввести свое имя, отчество и фамилию с пробелами.Затем отобразите длину имени, длину отчества, инициалы и полное имя в верхнем регистре.Вот пример класса
Пример вывода:
Enter a first name middle name and surname
Peggy Sue Palmer
Length of your name: 16 characters
Length of your middle name: 3 characters
Your initials are PSP
PEGGY SUE PALMER
До сих пор я работал над некоторым кодом и могу правильно получить некоторые выходные данные, но когда я иду, чтобы войти в Peggy SueПалмер Я должен ввести имя по одному с пробелом в конце, а затем нажать клавишу ввода, чтобы ввести следующее имя.Кроме того, он отображает длину среднего инициала как 4 вместо 3. Я знаю, что у меня может быть все входное значение в одной строке, если у меня есть только один вход String name = input.nextLine (), который разрешает формат ввода, который я ищуно если я это сделаю, я понятия не имею, как получить длину среднего имени или инициалы.Извините, это глупый вопрос, но это мой первый класс Java, и мы только изучаем основы.
package tracy2prog1;
import java.util.Scanner;
public class Tracy2prog1 {
public static void main(String[] args) {
//create new scanner class
Scanner input = new Scanner(System.in);
//prompt user to enter first middle and last name
System.out.println("Please enter your first middle and last name with spaces between them");
String firstname = input.nextLine();
String middlename = input.nextLine();
String lastname = input.nextLine();
System.out.println(firstname.length() + middlename.length() + lastname.length());
System.out.println("The length of your middle name is " + middlename.length() + " characters");
System.out.println("Your initials are " + firstname.charAt(0) + middlename.charAt(0) +lastname.charAt(0));
System.out.println(firstname.toUpperCase() + middlename.toUpperCase() + lastname.toUpperCase());
}
}
Вот обновленный код, который работает, единственная проблема заключается в том, что не считая пробелов в выводе полного имени до 16, я получаю 14.
package tracy2prog2;
import java.util.Scanner;
public class Tracy2prog2 {
public static void main(String[] args) {
//create new scanner class
Scanner input = new Scanner(System.in);
//prompt user to enter first middle and last name
System.out.println("Please enter your first middle and last name with spaces between them");
String firstname = input.next();
String middlename = input.next();
String lastname = input.next();
System.out.print("Your name is ");
System.out.println(firstname.length() + middlename.length() + lastname.length() + " characters");
System.out.println("The length of your middle name is " + middlename.length() + " characters");
System.out.println("Your initials are " + firstname.charAt(0) + middlename.charAt(0) +lastname.charAt(0));
System.out.println(firstname.toUpperCase() + " " + middlename.toUpperCase() + " " + lastname.toUpperCase());
}
}