错误:兼容类型:java.util.String无法转换为字符串
这是我的密码。 每当我编译这段java代码时,都会出现如下错误: 不兼容的类型:java.util.String无法转换为字符串错误:兼容类型:java.util.String无法转换为字符串,java,string,Java,String,这是我的密码。 每当我编译这段java代码时,都会出现如下错误: 不兼容的类型:java.util.String无法转换为字符串 任何人都可以告诉我该怎么做才能克服它。您不应该为包java.lang.中的JRE中已经使用过的类使用名称。您不应该为包java.lang.中的JRE中已经使用过的类使用名称,因为您的类与Java的字符串来自Java.lang.*,基本上到处都使用 重命名类或使用前缀,如com.app.myclass.String之所以发生这种情况,是因为类的名称与Java.lang.
任何人都可以告诉我该怎么做才能克服它。您不应该为包
java.lang.
中的JRE中已经使用过的类使用名称。您不应该为包java.lang.
中的JRE中已经使用过的类使用名称,因为您的类与Java的字符串
来自Java.lang.*
,基本上到处都使用
重命名类或使用前缀,如
com.app.myclass.String
之所以发生这种情况,是因为类的名称与Java.lang.
中的Java的String
相同,而Java的String基本上到处都在使用
使用Java包重命名类或使用前缀,如com.app.myclass.String
可以避免class
名称冲突,因此当多个类之间发生冲突时,需要使用包名的全名前缀(如下面的option1)。
因此,要解决您的问题,您可以选择以下选项之一:
(1) java.util.String s=in.nextLine()代码>
(2) 更改您的类名MyString
您将了解如何避免类名冲突。使用Java软件包可避免类
名称冲突,因此,每当多个类之间发生冲突时,您需要使用带有软件包名称的完整类名前缀(如下面的选项1)。
因此,要解决您的问题,您可以选择以下选项之一:
(1) java.util.String s=in.nextLine()代码>
(2) 更改您的类名MyString
您将了解如何避免类名冲突。在哪一行?不要为类命名String
。不要定义名为String的类。String已经是一个标准类,基本上在任何地方都可以使用。你不希望这样的名字冲突。当你发布错误时,发布真实的错误。没有java.util.String这样的东西。除非您还选择在标准java.util包中创建类。也不要这样做。谢谢你,我只是没有注意到它在哪一行??不要给你的类命名String
。不要定义一个名为String的类。String已经是一个标准类,基本上在任何地方都可以使用。你不希望这样的名字冲突。当你发布错误时,发布真实的错误。没有java.util.String这样的东西。除非您还选择在标准java.util包中创建类。也不要那样做。谢谢你,我只是没注意到而已
import java.util.*;
import java.lang.*;
public class String{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("Enter a String: ");
String s=in.nextLine();
}
}
String s=in.nextLine();
^