【发布时间】:2017-08-09 13:55:00
【问题描述】:
我有一个字符串数组:
private String [] arrFilePaths=new String[4];
我有一个函数可以返回字符串并将其添加到数组中:
@Override
public void accept(List<File> files) throws Exception {
int size = files.size();
while (size-- > 0) {
arrFilePaths[size]=files.get(size).toString();
}
}
现在我有一个按钮,我正在访问其中的数组:
@Override
public void onClick(View v) {
if(arrFilePaths[0]==null){
//some code
}else {
//some code
}
现在的问题是arrFilePaths 有时仅在按钮单击时返回字符串。大多数时候它返回null。在单击按钮之前,数据总是被插入到数组中。所以我不知道发生了什么。
是的,我已经在调试模式下进行了测试,arrFilePaths 正在插入数据,但是在单击按钮后以某种方式显示为 null(即使我使用的是相同的变量)。
谁能解释一下这个奇怪的输出?谢谢!
【问题讨论】:
-
arrFilePaths 在哪里声明?如果它只是函数的局部变量而不是全局变量,它很可能会丢失值
-
我已经在主类之后声明了数组。及其最重要的功能
-
除此之外,我还尝试了 public static 使其成为全球性的,但有时我仍然在获取数据,有时却没有。
-
你能发布你的类文件的最小代码吗?我们需要了解您的代码流以查看断开连接的位置。谢谢。