- 所有已知的实现类:
-
CompositeDataSupport
,GcInfo
public interface CompositeData
CompositeData
接口指定了一种特定类型的复杂开放数据对象的行为,这些对象代表复合数据结构。
- 自:
- 1.5
-
Method Summary
Modifier and TypeMethodDescriptionboolean
containsKey
(String key) 如果且仅当此CompositeData
实例包含一个名称为key
的项时返回true
。boolean
containsValue
(Object value) 如果且仅当此CompositeData
实例包含一个值为value
的项时返回true
。boolean
将指定的obj参数与此CompositeData
实例进行比较,以检查是否相等。返回名称为key
的项的值。Object[]
返回由keys
指定的项的值数组,顺序与keys
相同。返回此复合数据实例的复合类型。int
hashCode()
返回此CompositeData
实例的哈希码值。toString()
返回此CompositeData
实例的字符串表示形式。Collection
<?> values()
返回此CompositeData
实例中包含的项值的不可修改的集合视图。
-
Method Details
-
getCompositeType
CompositeType getCompositeType()返回此复合数据实例的复合类型。- 返回:
- 此CompositeData的类型。
-
get
返回名称为key
的项的值。- 参数:
-
key
- 项的名称。 - 返回:
- 与此键关联的值。
- 抛出:
-
IllegalArgumentException
- 如果key
为null或空字符串。 -
InvalidKeyException
- 如果key
不是此CompositeData
实例的现有项名称。
-
getAll
返回由keys
指定的项的值数组,顺序与keys
相同。- 参数:
-
keys
- 项的名称。 - 返回:
- 与键对应的值。
- 抛出:
-
IllegalArgumentException
- 如果keys
中的元素为null或空字符串。 -
InvalidKeyException
- 如果keys
中的元素不是此CompositeData
实例的现有项名称。
-
containsKey
如果CompositeData
实例包含一个名称为key
的项,则返回true
。如果key
为null或空字符串,则此方法简单地返回false。- 参数:
-
key
- 要测试的键。 - 返回:
-
如果此
CompositeData
包含该键,则返回true。
-
containsValue
如果CompositeData
实例包含一个值为value
的项,则返回true
。- 参数:
-
value
- 要测试的值。 - 返回:
-
如果此
CompositeData
包含该值,则返回true。
-
values
Collection<?> values()返回此CompositeData
实例中包含的项值的不可修改的集合视图。返回的集合的迭代器将按照相应项名称的升序字典顺序返回值。- 返回:
- 值。
-
equals
将指定的obj参数与此CompositeData
实例进行比较,以检查是否相等。如果且仅当以下所有语句都为真时,返回
true
:- obj不为null,
- obj还实现了
CompositeData
接口, - 它们的复合类型相等,
- 它们的内容,即(名称,值)对相等。如果内容中包含的值为数组,则值比较将按照调用对象引用类型数组的
deepEquals
方法或适当的Arrays.equals(e1,e2)
重载来进行。
这确保了对于
CompositeData
接口的不同实现的obj参数,此equals
方法可以正常工作,但受到java.util.Collection
接口的equals
方法中提到的限制。 -
hashCode
int hashCode()返回此CompositeData
实例的哈希码值。CompositeData
实例的哈希码是用于equals
比较的所有信息元素的哈希码之和(即:其复合类型和所有项值)。这确保了对于任何两个
CompositeData
实例t1
和t2
,如果t1.equals(t2)
,则t1.hashCode()==t2.hashCode()
,这是Object.hashCode()
方法的一般契约所要求的。每个项值的哈希码将添加到返回的哈希码中。如果项值是数组,则其哈希码将按照调用对象引用类型数组的
deepHashCode
方法或适当的Arrays.hashCode(e)
重载来获取。 -
toString
String toString()返回此CompositeData
实例的字符串表示形式。字符串表示形式包括实现类的名称,此实例的复合类型的字符串表示形式,以及内容的字符串表示形式(即列出itemName=itemValue映射)。
-