gpt4 book ai didi

java - if 语句在执行过程中被跳过

转载 作者:行者123 更新时间:2023-12-01 07:10:46 24 4
gpt4 key购买 nike

我的这段代码有问题。第 6 行的 if 语句在执行期间被忽略。此时我已单步执行代码,变量 file[position] 的值为“subjects.dat”。但是,它会跳过此步骤并转到相关的 else 语句。有什么想法吗??

dialogButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if (markComplete.isChecked()) {
String toDelete;
String[] files = fileList();
if (files[position] == "subjects.dat") { //the error occurs at this line
toDelete = files[position + 1];
boolean deleted = deleteFile(toDelete);
if (deleted) {
dialog.dismiss();
} else {
// Do nothing
}
} else {
toDelete = files[position];
boolean deleted = deleteFile(toDelete);
if (deleted) {
dialog.dismiss();
} else {
//Do nothing
}
}

}
}

谢谢!

最佳答案

您需要使用 .equals() 来比较两个字符串的实际值 - 否则您将检查它们是否是同一个对象。

if (files[position].equals("subjects.dat")) { 
// do stuff
}

关于java - if 语句在执行过程中被跳过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14816755/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com