Table是Guava在jdk的基础上新增的一种新集合类型,是一个有序的键值对集合。可能通过行和列取出对应的值。而Table有可能是稀疏的,不是每个行列对都会有值。可以通过行(列)键值或取出一行(列)的数据,也可以同时使用,取出唯一的映射值。返回集合的方法是返回Tabale的中对象的引用,修改集合会修改表,修改表也会修改集...
Map<String, Integer> countMap =newHashMap<>();while(celliter.hasNext()) { Table.Cell<String, String, Integer> cell = (Table.Cell<String, String, Integer>) celliter.next();if(cell.getValue() > 400) {if(countMap.containsKey(cell.getRowKey())) { Integer count= countMap.get(cell.get...
boolean hasRowKeyCharlie = workHoursTable.containsRow("Charlie"); boolean hasColumnKeyProjectD = workHoursTable.containsColumn("ProjectD"); System.out.println("Does the table have a row for Charlie? " + hasRowKeyCharlie); System.out.println("Does the table have a column for ProjectD? " +...
Guava TreeBasedTable是Google Guava库中的一个数据结构,它是一个基于树的表格,可以按照列进行排序。它提供了一种方便的方式来组织和操作具有行和列索引的数据。 TreeBa...
packagecom.guava;importcom.google.common.collect.HashBasedTable;importcom.google.common.collect.Table;publicclassTableTest {publicstaticvoidmain(String[] args) { Table<String, Integer, String> aTable =HashBasedTable.create(); aTable.put("A", 1, "A1"); ...
Map<Integer,String> columnMap = table.column(1); Map<Integer,String> rowMap = table.row(2); 其他table ArrayTable //二维数组实现 ImmutableTable //不可变table,创建后不能改变 TreeBasedTable //对行列排序的table Range: 代表一种范围的类。
Guava库向我们提供了一些更加丰富的集合类,比如诸如ImmutableSet、ImmutableList、ImmutableSortedSet、ImmutableMap以及更为泛化和强大的Multiset(可以存储相同元素的集合)、BiMap(可以将两个键映射到一个值)、Table(可以将一个键映射到另一个键的值)等。 (2).字符串处理 ...
关联可变和不可变集合Guava提供Multiset和MultiMap,如Multiset支持元素重复,SortedMultiset则支持范围查询。而MultiMap则允许一个键关联多个值,用ListMultimap或SetMultimap接口更常见。新集合类型BiMap作为特殊的Map,保证键值对应的一对一关系。Table则像一个多维度的数据表,提供了rowKey、columnKey和value的...
采用工厂方法建立Table对象信息集合,如下所示。 Table<Integer,Integer,Person> personTable=HashBasedTable.create(); 1. 上面我们采用的是HashMap为基础的Table数据模型。 设置数据案例 private static void testTable() { Table<Integer,Integer,Person> personTable=HashBasedTable.create(); ...