java数组,数组列表,哈希映射和使用它们

时间:2016-02-12 10:44:58

标签: java arrays arraylist

我是java的新手,我在使用数组和哈希映射时遇到了很大麻烦。

问题:我从包含两个ArrayLists的Amazon S3服务获取objectListing。 (ObjectSummaries和commonPrefixes)。

我循环遍历它们并将它们添加到List String中。这是我的代码

    try {
        AmazonS3 s3client = new AmazonS3Client(new BasicAWSCredentials(access_key_id, secret_access_key));

        ObjectListing listKey = s3client.listObjects(new ListObjectsRequest().withBucketName(bucket).withPrefix(key).withDelimiter("/"));
        List<String> keys = new ArrayList<String>();
        for(String obj2: listKey.getCommonPrefixes()){
            String test=obj2;
            keys.add(test);
        }
        for (S3ObjectSummary obj : listKey.getObjectSummaries()) {
            keys.add(obj.getKey());
        }
        return keys;

    } catch (AmazonServiceException x) {
        String errorCode = x.getErrorCode();
        if (!errorCode.equals("NoSuchKey")) {
            throw x;
        }
    }

这给了我带字符串键的列表。但是现在我想获得对象的关键字的大小和Lastmodified。我应该能够知道我添加到键中的对象的每个键的大小和最后修改。

我不知道我是应该使用hashmap还是什么?我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

以下是如何做到这一点:

  1. 创建一个包含所需参数的类

    $n
  2. 创建public class MyObject { private String key; private int size; private Date lastModified; public MyObject() {} public MyObject(String key, int size, Date lastModified) { this.key = key; this.size = size; this.lastModified = lastModified; } /* Getters-Setters*/ } 而非MyObject

    的列表
    String
  3. 将值添加到列表

    List<MyObject> myObj = new ArrayList<MyObject>();