Простая строковая ошибка
Я пытаюсь создать строковый метод в Java, где он предлагает кому-то ввести строку длиной более трех символов. После ввода я хочу отобразить три средних символа этой строки. Что-то не так, потому что не компилируется. Кто-нибудь может увидеть мою ошибку? Я не могу найти это. Благодарю.
//MyString.java
import java.util.Scanner;
public class MyString .java {
public static void main (String[] args)
{
String string;
Scanner scan = new Scanner(System.in);
System.out.println ("Enter a string with a minimum of three characters: " + string);
string = scan.nextLine();
System.out.println ("You entered: " + string);
String middle3;
System.out.println ("The middle three characters of the string: " + middle3);
}
}
4 ответа
Ты используешь MyString .java
как имя класса. Java не допускает, чтобы пространство и точка были частью допустимого имени класса. Я думаю, ты имел в виду MyString
,
Также переменные string
а также middle3
не инициализируются перед их использованием.
Вы на самом деле не рассчитываете middle3. Это даже не инициализируется нулем. Я полагаю, вы хотите:
String middle3 = (string.length < 3) ? null : string.substring(string.length / 2 - 1), string.length / 2 + 2);
или что-то типа того.
Почему вы добавляете строку здесь?
System.out.println ("Enter a string with a minimum of three characters: " + string );
здесь вы должны инициализировать middle
:
String middle3 ="something";
System.out.println ("The middle three characters of the string: " + middle3);