1700452450
phoneBook.put(“张三”,“110”);
1700452451
1700452452
phoneBook.put(“张三”,“119”);
1700452453
1700452454
System.out.println(phoneBook.get(“张三”));
1700452455
1700452456
输出的结果是一个包含两个元素的Collection,这是一种很巧妙的处理方式,可以方便地解决我们开发中的问题。
1700452457
1700452458
Table表
1700452459
1700452460
在GIS(Geographic Information System,地理信息系统)中,我们经常会把一个地点标注在一个坐标上,比如把上海人民广场标注在北纬31.23、东经121.48的位置上,也就是说只要给出了准确的经度和纬度就可以进行精确的定位—两个键决定一个值,这在Guava中是使用Table来表示的,示例代码如下:
1700452461
1700452462
Table<Double, Double, String>g=HashBasedTable.create();
1700452463
1700452464
//定义人民广场的经纬度坐标
1700452465
1700452466
g.put(31.23,121.48,“人民广场”);
1700452467
1700452468
//输出坐标点的建筑物
1700452469
1700452470
g.get(31.23,121.48);
1700452471
1700452472
其实Guava的Table类与我们经常接触的DBRMS表非常类似,可以认为它是一个没有Schema限定的数据表,比如:
1700452473
1700452474
//Table,完全类似于数据库表
1700452475
1700452476
Table<Integer, Integer, String>user=HashBasedTable.create();
1700452477
1700452478
//第一行、第一列的值是张三
1700452479
1700452480
user.put(1,1,“张三”);
1700452481
1700452482
//第一行、第二列的值是李四
1700452483
1700452484
user.put(1,2,“李四”);
1700452485
1700452486
//第一行第一列是谁
1700452487
1700452488
user.get(1,1);
1700452489
1700452490
集合工具类
1700452491
1700452492
Guava的集合工具类分得比较细,比如Lists、Maps、Sets分别对应的是List、Map、Set的工具类,它们的使用方法比较简单,比如Map的过滤,如下所示。
1700452493
1700452494
//姓名、年龄键值对
1700452495
1700452496
Map<String, Integer>user=new HashMap<String, Integer>();
1700452497
1700452498
user.put(“张三”,20);
1700452499
[
上一页 ]
[ :1.70045245e+09 ]
[
下一页 ]