Java相当于PHP的多维数组

时间:2015-11-03 12:40:03

标签: java arrays multidimensional-array

我正试图创建"匿名"带有非数字键的数据数组,就像我在PHP中一样,就像那样:

$datas = [
    [
        'firstname' => 'Sam',
        'lastname' => 'Winchester',
        'job' => 'Hunter',
        'age' => 30
    ],
    [
        'firstname' => 'Dean',
        'lastname' => 'Winchester',
        'job' => 'Hunter',
        'age' => 35
    ],
];

我想知道我是否可以在没有创建特定类或类似内容的情况下做到这一点。

我找到了一些使用地图的解决方案,但它只能处理2个字段,而不是更多。

感谢。

2 个答案:

答案 0 :(得分:1)

Java中没有直接的等价物。您必须创建一个包含4个字段PersonfirstNamelastNamejob的课程age,然后使用Person[]。< / p>

答案 1 :(得分:0)

@Paul Boddington的回答也很棒但是如果你想要一个更通用的解决方案,你可以创建一个哈希图列表。

List<HashMap<String, String>> data = new ArrayList<>(); // Diamond expression
List<HashMap<String, String>> data = new ArrayList<HashMap<String, String>>(); // non diamond

将PHP数组的数据添加到我们的解决方案中

HashMap<String, String> personOne = new HashMap<String, String>();
personOne.put("firstname", "Sam");
personOne.put("lastname", "Winchester");
...
data.add(personOne);

瞧。