Java 有人能指出IF声明中的错误吗
我对JAVA非常陌生,无法解决IF语句的问题Java 有人能指出IF声明中的错误吗,java,Java,我对JAVA非常陌生,无法解决IF语句的问题 class SpaceRemover { public static void main() { String mostFamous= "This is a test"; char[] mfl = mostFamous.toCharArray(); for (int dex = 0; dex < mfl.length; dex++) { char curren
class SpaceRemover {
public static void main() {
String mostFamous= "This is a test";
char[] mfl = mostFamous.toCharArray();
for (int dex = 0; dex < mfl.length; dex++) {
char current = mfl[dex];
if (current != "") {
System.out.print(current);
} else {
System.out.print(".");
}
}
System.out.println();
}
}
类间隔器删除{
公共静态void main(){
String mostFamous=“这是一个测试”;
char[]mfl=mostFamous.toCharArray();
对于(int-dex=0;dex
当前
被定义为字符
,但您试图将其与字符串
进行比较。很简单,这是代码中的一个错误,Java编译器会通知您这一错误,其效果是
不可比较的类型:char和java.lang.String
错误消息表示无法将字符
与字符串
进行比较。学会阅读这些错误信息,它将在未来为您带来巨大的回报
现在您有空的字符串
,char
没有相应的值,但似乎您想与空格“”
”进行比较。因此:
if (current != ' ') {
System.out.print(current);
}
else {
System.out.print(".");
}
current
被定义为char
,但您试图将其与字符串进行比较。很简单,这是代码中的一个错误,Java编译器会通知您这一错误,其效果是
不可比较的类型:char和java.lang.String
错误消息表示无法将字符
与字符串
进行比较。学会阅读这些错误信息,它将在未来为您带来巨大的回报
现在您有空的字符串
,char
没有相应的值,但似乎您想与空格“”
”进行比较。因此:
if (current != ' ') {
System.out.print(current);
}
else {
System.out.print(".");
}
您应该将字符与当前.equals(“”)
方法进行比较
您在这里将字符与字符串进行比较您应该将字符与当前的.equals(“”)
方法进行比较
这里比较的是字符和字符串根据提供的类名和代码判断,我假设您试图删除字符串中的所有空格,并用句点替换它们 你的问题就在这条线上
if (current != "") {
首先,这不是一个空格,这是一个空字符串。
其次,您应该将其与char进行比较
应该是这样的:
if (current != ' ') {
从提供的类名和代码判断,我假设您正在尝试删除字符串中的所有空格,并用句点替换它们 你的问题就在这条线上
if (current != "") {
首先,这不是一个空格,这是一个空字符串。
其次,您应该将其与char进行比较
应该是这样的:
if (current != ' ') {
顺便说一句,publicstaticvoidmain(String[]args)应该搜索“javacomparesetring”(on-SO)中的许多重复项和一些有趣的怪癖。也就是说,确保说出错误是什么(例如,包括错误消息、堆栈跟踪、意外行为)。在这种情况下,它是一个类型错误,甚至不会编译(即使它编译了,也不会像预期的那样工作)。请记住:我们看不到您的屏幕。顺便说一句,
publicstaticvoidmain(String[]args)
应该搜索“java比较字符串”(on SO)中的许多重复项和一些有趣的怪癖。也就是说,确保说出错误是什么(例如,包括错误消息、堆栈跟踪、意外行为)。在这种情况下,它是一个类型错误,甚至不会编译(即使它编译了,也不会像预期的那样工作)。记住:我们看不到你的屏幕。