2011-02-01 187 views
3

所以我敢肯定这是一个noob问题,但是在读在Android编程后我通过管道来了,像这样:<String,String>是什么意思?

List<Map<String, String>> groupData = new ArrayList<Map<String, String>>(); 

我的问题是什么<Map<String, String>>是什么意思?我尝试过使用谷歌搜索,但我得到的是有关Java运算符的清单。

+4

[泛型](http://download.oracle.com/javase/1.5.0/docs/guide/language/generics.html) – Phil 2011-02-01 06:16:58

回答

0

列表的Map它的键是字符串,其值都是字符串。

1

这是使用Java Generics的声明。你不应该将尖括号解析为数学运算符,而应该将其作为一种围绕类型的花式括号。在函数中,您将特定类型的实例作为参数传递;在泛型中,您将实际类型作为参数传递。

让我们从内到外的工作。读取第一部分是

Map<String, String> 

这意味着“的Map一个实例,它的键是String S和其值为String秒。”例如,这可能会将人们的姓名与其驾照号码关联起来。然后,我们在

List<Map<String, String>> 

这是元素的List,其中每个元素是一个从MapStringString值使用这些作为元素。例如,这可能是针对不同状态的不同名称对驾驶员许可证ID的列表。

你应该阅读泛型;他们总是用Java来出现,而且是一个非常方便的工具。当你继续Java旅程时,你会看到它们很多,而且它们是编程库中的宝贵工具。

2

a Map<type, type>是将第一种类型与第二种类型中的一种相关联的集合。所以Map<String, String>将一个String与另一个String相关联。这是generics的一个实例。该List<Map<String, String>>意味着你必须持有Map s表示保持两个String小号