public interface TabularData
TabularData 接口指定特定类型的复杂开放数据 对象的行为,该对象表示了表格数据 结构。
方法摘要 | |
---|---|
Object[] |
calculateIndex(CompositeData value) 计算将在此 TabularData 实例中使用的索引,以便在指定的复合数据 value 参数添加到此实例中后引用该参数。 |
void |
clear() 从此 TabularData 实例中移除所有 CompositeData 值(即各行)。 |
boolean |
containsKey(Object[] key) 当且仅当此 TabularData 实例包含其索引为指定 key 的 CompositeData 值(即行)时,才返回 true。 |
boolean |
containsValue(CompositeData value) 当且仅当此 TabularData 实例包含指定的 CompositeData 值时才返回 true。 |
boolean |
equals(Object obj) 比较指定的 obj 参数与此 TabularData 实例的相等性。 |
CompositeData |
get(Object[] key) 返回此 TabularData 实例中其索引为 key 的 CompositeData 值,如果没有映射到 key 的值,则返回 null。 |
TabularType |
getTabularType() 返回描述此 TabularData 实例的表格类型。 |
int |
hashCode() 返回此 TabularData 实例的哈希码值。 |
boolean |
isEmpty() 如果此 TabularData 实例中包含的 CompositeData 值的数目(即行数)为零,则返回 true。 |
Set<?> |
keySet() 返回此 TabularData 实例中包含的 CompositeData 值(即各行)的键(即索引值)的 set 视图。 |
void |
put(CompositeData value) 将 value 添加到此 TabularData 实例。 |
void |
putAll(CompositeData[] values) 将 values 中的所有元素添加到此 TabularData 实例。 |
CompositeData |
remove(Object[] key) 从此 TabularData 实例中移除其索引为 key 的 CompositeData 值,并返回被移除的值,如果不存在索引为 key 的值,则返回 null。 |
int |
size() 返回此 TabularData 实例中包含的 CompositeData 值的数目(即行数)。 |
String |
toString() 返回此 TabularData 实例的字符串表示形式。 |
Collection<?> |
values() 返回此 TabularData 实例中包含的 CompositeData 值(即各行)的 collection 视图。 |
方法详细信息 |
---|
TabularType getTabularType()
Object[] calculateIndex(CompositeData value)
value
- 要计算其在此
TabularData 实例中索引的复合数据值;必须是与此实例的行类型相同的复合类型;而且不可以为 null。
NullPointerException
- 如果
value 为
null
InvalidOpenTypeException
- 如果
value 不符合此
TabularData 实例的行类型定义。
int size()
boolean isEmpty()
boolean containsKey(Object[] key)
key
- 将测试其是否存在于此
TabularData 实例中的索引值。
boolean containsValue(CompositeData value)
value
- 将测试其在此
TabularData 实例中的存在性的行值。
CompositeData get(Object[] key)
key
- 要返回的行的键。
NullPointerException
- 如果
key 为
null
InvalidKeyException
- 如果
key 不符合此
TabularData 实例的 *
TabularType 定义
void put(CompositeData value)
getRowType()
返回的复合类型)相同,并且此
TabularData 实例中现有值的索引不能与要添加的
value 计算的索引相同。
value 的索引是根据此
TabularData 实例的
TabularType 定义计算的(请参见
TabularType.getIndexNames()
)。
value
- 要作为新行添加到此
TabularData 实例中的复合数据值;必须是与此实例的行类型相同的复合类型;并且不可以为 null。
NullPointerException
- 如果
value 为
null
InvalidOpenTypeException
- 如果
value 不符合此
TabularData 实例的行类型定义。
KeyAlreadyExistsException
- 如果根据此
TabularData 实例的
TabularType 定义计算的
value 的索引已经映射到基础 HashMap 中现有的值。
CompositeData remove(Object[] key)
key
- 要获取的此
TabularData 实例中值的索引;必须对此
TabularData 实例的行类型定义有效;并且不可以为 null。
NullPointerException
- 如果
key 为
null
InvalidKeyException
- 如果
key 不符合此
TabularData 实例的
TabularType 定义
void putAll(CompositeData[] values)
put
中定义的约束,或者
values 中的任何两个元素具有相同的索引,则抛出一个描述失败的异常,并且不添加
values 的任何元素,因此,此
TabularData 实例保持不变。
values
- 作为新行添加到此
TabularData 实例的复合数据值的数组;如果
values 为
null 或者为空,则此方法直接返回且不执行任何操作。
NullPointerException
- 如果
values 的一个元素为
null
InvalidOpenTypeException
- 如果
values 的某个元素不符合此
TabularData 实例的行类型定义
KeyAlreadyExistsException
- 如果根据此
TabularData 实例的
TabularType 定义计算的
values 的某个元素的索引已经映射到此实例中现有的值,或者
values 的两个元素具有相同的索引。
void clear()
Set<?> keySet()
TabularData
实例中包含的
CompositeData
值(即各行)的键(即索引值)的 set 视图。返回的
Set
是一个
Set<List<?>>
,但出于兼容性原因被声明为
Set<?>
。然后可以使用返回的 Set 对键进行迭代。
TabularData
实例中使用的索引值的 set 视图 (
Set<List<?>>
)。
Collection<?> values()
TabularData
实例中包含的
CompositeData
值(即各行)的 collection 视图。返回的
Collection
是一个
Collection<CompositeData><?>>
,但出于兼容性原因被声明为
Collection<?>
。然后可以使用返回的 collection 对值进行迭代。
TabularData
实例中包含的行的 collection 视图 (
Collection<CompositeData>
)。
boolean equals(Object obj)
TabularData
实例的相等性。
当且仅当下面的所有语句均为 true 时,才返回 true:
TabularData
接口TabularData
接口的不同实现的
obj 参数正常工作。
obj
- 与此
TabularData
实例进行相等性比较的对象。
TabularData
实例,则返回
true
。
Object.hashCode()
,
Hashtable
int hashCode()
TabularData
实例的哈希码值。
TabularData
实例的哈希码是在 equals
比较中使用的信息的所有元素的哈希码总和(即其表格类型 及其内容,其中内容被定义为值映射的所有索引)。
这确保 t1.equals(t2)
意味着对于任何两个 TabularDataSupport
实例 t1
和 t2
而言,都存在 t1.hashCode()==t2.hashCode()
,这是方法 Object.hashCode()
的通用协定所要求的。
TabularDataSupport
实例的哈希码值
Object.equals(java.lang.Object)
,
Hashtable
String toString()