我对Android很陌生,所以这可能是我尚未习惯的平台的怪癖,但我遇到了文件导航的问题。我已经成功创建了一个系统,我可以成功进入并导航目录,但是我无法将我的应用设置为禁止/storage/emulated/0
上方的导航。我目前的代码是:
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0){
if(f.getAbsolutePath() != "/storage/emulated/0"){
RefreshListing(f.getParent());
}
return true;
}
return super.onKeyDown(keyCode,event);
}
其中f
是包含当前目录的File
类型的变量。
我尝试在比较路径的末尾添加斜杠,这没有什么区别。我还尝试将f.getAbsolutePath()
打印到屏幕上以确保我使用正确的语法,但字符串仍不等同,导航最终会超过/storage/emulated/0
,从而导致应用程序崩溃。
答案 0 :(得分:2)
在Java中,字符串比较是equals()
,而不是==
或!=
。