打字猴:1.70045246e+09
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
1700452500 user.put(“李四”,22);
1700452501
1700452502 user.put(“王五”,25);
1700452503
1700452504 //所有年龄大于20岁的人员
1700452505
1700452506 Map<String, Integer>filtedMap=Maps.flterValues(user,
1700452507
1700452508 new Predicate<Integer>(){
1700452509
[ 上一页 ]  [ :1.70045246e+09 ]  [ 下一页 ]