我是java的新手
我正在尝试打印文件的扩展名。
(String)globalMap.get("tFileList_1_CURRENT_FILE")
,这是我的文件放置不同的扩展名。
我写的代码显示了这个错误:
“你不能将变量分配给extesion”
任何人都可以帮助我吗?
String str= (String)globalMap.get("tFileList_1_CURRENT_FILE");
String extension = str.substring(str.lastIndexOf(".") + 1);
if (extension = csv) {
System.out.println("good");
}
else if (extesion = bad) {
System.out.println("already processed");
}
else {
System.out.println("check");
}
答案 0 :(得分:2)
尝试改变这一点:
if (extension = csv)
使用:
if (extension.equals("csv"))
而且:
(extesion = bad)
有了这个:
(extension.equals("bad"))
使用equals()
代替=
,因为此方法会将此字符串与指定的对象进行比较。当且仅当参数不为null并且是一个表示与此对象相同的字符序列的String对象时,结果才为真。
但是=
是一个简单的赋值运算符。
答案 1 :(得分:1)
你的代码看起来很少被误导,
1.使用equals
代替=
if (extension.equals("csv"))
{
System.out.println("good");
}
else if (extension.equals("bad"))
{
System.out.println("already processed");
}
else
{
System.out.println("check");
}
修改详情
=
是赋值运算符,用于为变量赋值
==
是比较运算符,它通过引用比较两个对象并生成结果true
或false
if
我们总是需要布尔条件告诉编译器何时执行if
在我们的案例中,我们使用equals
代替==
,因为我们正在尝试比较字符串,如果我们使用==
,那么它将比较它们的引用而不是包含在变量。