Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在方法外部填充ArrayList_Java_Android_Android Studio_Arraylist - Fatal编程技术网

Java 在方法外部填充ArrayList

Java 在方法外部填充ArrayList,java,android,android-studio,arraylist,Java,Android,Android Studio,Arraylist,请检查更新的代码。这表示arraylist为null,同时尝试从oncreate方法获取元素。顺便说一下,我在内部类中将元素添加到arraylist中。 任何帮助都将不胜感激。 谢谢 private ArrayList<String> imageName; ListView listView; ArrayList<String> test; @Override protected void onCreate(Bundle savedInstanceState) {

请检查更新的代码。这表示arraylist为null,同时尝试从oncreate方法获取元素。顺便说一下,我在内部类中将元素添加到arraylist中。 任何帮助都将不胜感激。 谢谢

private ArrayList<String> imageName;
ListView listView;
ArrayList<String> test;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    context = this;
    listView = findViewById(R.id.clipslistview);
    test = new ArrayList<>();
    credentialProvider();
    setTransferUtility();
    getAll();
    Toast.makeText(context, test.get(0)+"", Toast.LENGTH_SHORT).show();
}

Thread thread = new Thread(){
    public void run(){
        final ListObjectsV2Request req = new ListObjectsV2Request().withBucketName("bucket-1234314-**********").withStartAfter(".jpg").withMaxKeys(10);
        ListObjectsV2Result result;

        imageNames = new ArrayList<>();

        result =  amazonS3Client.listObjectsV2(req);


        for (S3ObjectSummary objectSummary :
                result.getObjectSummaries()) {
            clipNames.add(objectSummary.getKey()+"");
            Log.d("TEEEST", objectSummary.getKey());
        }
    }
};
私有ArrayList imageName;
列表视图列表视图;
阵列列表测试;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
上下文=这个;
listView=findViewById(R.id.clipslistview);
测试=新的ArrayList();
证书提供者();
setTransferUtility();
getAll();
Toast.makeText(上下文,test.get(0)+“”,Toast.LENGTH_SHORT.show();
}
线程线程=新线程(){
公开募捐{
final ListObjectsV2Request req=new ListObjectsV2Request()。带BucketName(“bucket-1234314-**********”)。带StartAfter(.jpg”)。带MaxKey(10);
ListObjectsV2Result结果;
imageNames=新的ArrayList();
结果=amazonS3Client.listObjectsV2(请求);
对于(S3ObjectSummary对象摘要:
result.getObjectSummaries()){
添加(objectSummary.getKey()+);
Log.d(“TEEEST”,objectSummary.getKey());
}
}
};
试试这个

List<String> names = new ArrayList<>():

Thread thread = new Thread() {
    @Override
    public void run() {
       names.add("Hi");
       names.add("KK");
       names.add("Hello");
    }
};

thread.start();

public void lengthOflit() {
    Toast.makeText(getApplicationContext, names.size()+"", Length.SHORT).show;
}

那根线叫什么?查看此链接为什么需要单独的线程将数据添加到列表中?您从何处开始该线程?因为中间有一个网络操作线程。我使用线程,因为在我获取元素的地方有一个网络操作。对于那个网络操作,我需要在另一个线程上运行它。不,可能是因为我在innerclass中添加了元素。你知道如何访问在innerclass中添加到arraylist的元素吗,比如thread thread=new thread(){public void run(){names.add(something);}}}像这样
names.get(0)
names.get(1)
名称。获取(2)
List<String> names = new ArrayList<>():
names.add("Hi");
names.add("KK");
names.add("Hello");