我的一小段代码遇到了麻烦。
我要求用户给我答案(使用扫描仪),并且知道我想以其他方式使用该信息。然后,我想对其进行比较,看看答案是否正确。她是我代码的一小部分:
public void enterYourName(){
System.out.println("What is your name?");
name = input.nextLine();
}
我想在另一种方法中使用此信息:
public void check(String personName){
if(name.contentEquals("Eric")){
/* TODO */
}
}
我收到以下错误消息:
类型java.lang.CharSequence
无法解析。从所需的.class文件间接引用。
类型为contentEquals(java.lang.StringBuffer)
的方法java.lang.String
不适用于参数(java.lang.String
)。
我做错了什么?另外,如果陈述有误,请随时纠正我。
答案 0 :(得分:0)
java.lang.CharSequence
应该即使没有任何导入也可以使用-它是JDK的一部分。很难说,为什么它不起作用,但是应该。String.contentEquals
可以由StringBuffer
或CharSequence
参数化。您想用String
来调用它,它将无法正常工作。(2)可以很容易地解决:
String.equals(...)
或String.equalsIgnoreCase(...)
。StringBuffer
和CharSequence
两个类都有一个toString()
方法,它将它们转换为String
。我还怀疑,您的计算机的JDK / JRE安装可能有问题。