什么是Swift字典的Android Java等价物?

时间:2015-03-03 20:03:52

标签: java android swift dictionary

在swift中我可以像这样声明一个字典(键值对)

var toppings = [
        "Onions":"Red",
        "Peppers":"Green",
    ]

Java中的等价物(声明键值对)是什么?

我尝试修改数组,即更改...

public String[] couplets = {
        "Onions",
        "Peppers",
};

...到...

 public String[] toppings = {
        "Onions":"Red",
        "Peppers":"Green",
};

......但它不起作用。

我很欣赏他们是不同的语言,所以我很可能通过尝试做类似的直接过度简化。

基本上我想在Java中创建一个关键值对的静态列表。

我已经搜索了一些建议,但所有的答案看起来都过于复杂,而不是我能在swift中做的事情,所以我想知道是否有一种直截了当的方式 - 或许没有...

非常感谢任何建议

由于

3 个答案:

答案 0 :(得分:8)

http://docs.oracle.com/javase/tutorial/collections/interfaces/map.html

  

Map是将键映射到值的对象。地图不能包含重复的键:每个键最多可以映射一个值。

Map<String,String> toppings = new HashMap<>();
toppings.put("Onions","Red");
toppings.put("Peppers","Green");

地图很棒,你最终会使用它们很多:)

答案 1 :(得分:0)

试试地图。 实例化新地图:

Map<String, String> map = new HashMap<String, String>();

放置值:

map.put("Onions","Red");

读取值:

map.get("Onions");将返回&#34;红色&#34;

答案 2 :(得分:0)

如果您需要使用字符串键,则应使用其他答案中建议的HashMap

如果您可以使用整数键,我建议您使用SparseArray

SparseArray<String> values = new SparseArray<String>();
values.put(1,"value1");
values.put(2,"value2");