【发布时间】:2018-02-21 07:59:09
【问题描述】:
public class StrTest {
public static void main(String[] args) {
int i = 10;
Object obj =i;
if(obj instanceof String)
String s=(String) obj;
}
}
给我错误“字符串无法解析为变量”,但是如果将程序更改为
public class StrTest {
public static void main(String[] args) {
int i = 10;
Object obj =i;
String s=null;
if(obj instanceof String)
s=(String) obj;
}
}
如果我做这样的事情,这实际上编译得很好:
public class StrTest {
public static void main(String[] args) {
int i = 10;
Object obj =i;
if(obj instanceof String){
String s=(String) obj;
}
}
}
这也很好用。我想知道有什么语法错误。
【问题讨论】:
-
if(obj instanceof String) String s=(String) obj;将是完全无用的代码,不是吗 -
@scary wombat :我同意,但我唯一的问题是为什么错误显示“字符串无法解析为变量”
标签: java string if-statement