Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 简单字符串错误_Java_String_Prompt_Mutation - Fatal编程技术网

Java 简单字符串错误

Java 简单字符串错误,java,string,prompt,mutation,Java,String,Prompt,Mutation,我试图在java中创建一个string方法,它会提示用户输入一个长度超过三个字符的字符串。输入后,我想显示该字符串中间的三个字符。有些错误是因为它没有编译。有人能看出我的错误吗?我找不到它。谢谢 //MyString.java import java.util.Scanner; public class MyString .java { public static void main (String[] args) { String string; Sca

我试图在java中创建一个string方法,它会提示用户输入一个长度超过三个字符的字符串。输入后,我想显示该字符串中间的三个字符。有些错误是因为它没有编译。有人能看出我的错误吗?我找不到它。谢谢

//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);


    }


}

这是错误的。删除“.java”

您正在使用
MyString.java
作为类名。Java不允许空格和句点作为有效类名的一部分。我猜你的意思是
MyString


此外,变量
string
middle3
在使用前未初始化。

为什么要在此处附加字符串

 System.out.println ("Enter a string with a minimum of three characters: " + string ); 
在这里您应该初始化
中间

String middle3 ="something";    
System.out.println ("The middle three characters of the string: " + middle3);

你实际上并不是在计算中间价。它甚至没有初始化为null。我想你想要:

String middle3 = (string.length < 3) ? null : string.substring(string.length / 2 - 1), string.length / 2 + 2);
String middle3=(String.length<3)?null:string.substring(string.length/2-1)、string.length/2+2);

或者类似的东西。

编译器会出现什么错误?“{”应该出现在第10行-(公共类行)公共类MyString旁边的“.java”是什么意思是?应该删除它。无论如何,看起来您的代码没有对输入字符串执行任何操作。它不起作用。我如何让它显示中间的三个字符?什么不起作用?输入是什么;输出是什么?如果字符串短于3个字符,您希望打印什么?
String middle3 = (string.length < 3) ? null : string.substring(string.length / 2 - 1), string.length / 2 + 2);