JAVA 中与 PHP 中的类型混合多维数组的最佳等效解决方案是什么?



我一直在用PHP,我是Java的新手。我现在阅读了一些关于哈希图、数组列表等的教程,但现在我很困惑哪一个是适合我的选择。在PHP中,我曾经创建过这样的数组:

$test['google']['color'] = "red";
$test['google']['value'] = 67;
$test['IBM']['color'] = "blue";
$test['apple']['value'] = 23;
.
.

我还想搜索键和值。在 Java 中,什么是好的选择?

这不是一个类型的混合数组,而是内部有关联数组的关联数组。最后你只有一种类型 - 整数。

Java不支持关联数组,但是使用Map可以轻松实现。

Map<String, Int> map = new HashMap<String, Integer>();
map.put("name", 1);
map.put("fname", 2);
map.get("name"); // returns 1

然后

Map<String, Map<String, Integer>> mapAssociated = new HashMap<String, Map<String, Integer>>;
mapAssociated,put('example', map);

但说实话。我不喜欢 php 中的关联数组,我更喜欢使用对象和集合。也许你从错误的角度思考问题。

或者,第二种解决方案

Object[][] data = {
    {"mykey1", "myval1"},
    {"mykey2", "myval2"},
    {new Date(), new Integer(1)},
};

最新更新