- java.lang.Object
-
- javafx.beans.binding.MapExpression<K,V>
-
- 参数类型
-
K- 关键元素的类型 -
V- 值元素的类型
- All Implemented Interfaces:
-
Map<K,V>,Observable,ObservableMapValue<K,V>,ObservableObjectValue<K>,ObservableValue<K>,ObservableMap<K,V>
- 已知直接子类:
-
MapBinding,ReadOnlyMapProperty
public abstract class MapExpression<K,V> extends Object implements ObservableMapValue<K,V>
MapExpression是一个ObservableMapValue加上额外的便利方法,以流利的风格生成绑定。一个具体的子类
MapExpression必须实现方法ObservableObjectValue.get(),它提供了这个表达式的实际值。如果
MapExpression的包装列表为null,则实现Map界面的所有方法将表现为将其应用于不可变的空列表。- 从以下版本开始:
- JavaFX 2.1
-
-
Property Summary
Properties Type Property 描述 abstract ReadOnlyBooleanPropertyempty一个布尔属性是true,如果地图是空的。abstract ReadOnlyIntegerPropertysize表示地图大小的整数属性。
-
构造方法摘要
构造方法 Constructor 描述 MapExpression()
-
方法摘要
所有方法 静态方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 StringBindingasString()创建一个StringBinding持有的价值MapExpression变成了String。voidclear()从该地图中删除所有的映射(可选操作)。booleancontainsKey(Object obj)如果此映射包含指定键的映射,则返回true。booleancontainsValue(Object obj)如果此映射将一个或多个键映射到指定的值,则返回true。abstract ReadOnlyBooleanPropertyemptyProperty()一个布尔属性是true,如果地图是空的。Set<Map.Entry<K,V>>entrySet()返回此地图中包含的映射的Set视图。Vget(Object key)返回指定键映射到的值,如果此映射不包含键的映射,则返回null。intgetSize()地图的大小ObservableMap<K,V>getValue()返回此ObservableValue的当前值booleanisEmpty()获取属性的值为空。BooleanBindingisEqualTo(ObservableMap<?,?> other)创建一个新的BooleanBinding持有true如果此映射等于另一个ObservableMap。BooleanBindingisNotEqualTo(ObservableMap<?,?> other)创建一个新的BooleanBinding持有true如果此映射不等于另一个ObservableMap。BooleanBindingisNotNull()创建一个新的BooleanBinding持有true如果包装地图不是null。BooleanBindingisNull()创建一个新的BooleanBinding持有true如果包装映射为null。Set<K>keySet()返回此地图中包含的键的Set视图。static <K,V> MapExpression<K,V>mapExpression(ObservableMapValue<K,V> value)返回一个MapExpression的MapExpression 。Vput(K key, V value)将指定的值与该映射中的指定键相关联(可选操作)。voidputAll(Map<? extends K,? extends V> elements)将指定地图的所有映射复制到此映射(可选操作)。Vremove(Object obj)如果存在(从可选的操作),从该地图中删除一个键的映射。intsize()返回此地图中键值映射的数量。abstract ReadOnlyIntegerPropertysizeProperty()表示地图大小的整数属性。ObjectBinding<V>valueAt(ObservableValue<K> key)创建一个包含指定键的映射的新的ObjectBinding。ObjectBinding<V>valueAt(K key)创建一个新的ObjectBinding,其中包含指定键的映射。Collection<V>values()返回此地图中包含的值的Collection视图。-
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, entry, equals, forEach, getOrDefault, hashCode, merge, of, of, of, of, of, of, of, of, of, of, of, ofEntries, putIfAbsent, remove, replace, replace, replaceAll
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface javafx.beans.Observable
addListener, removeListener
-
Methods inherited from interface javafx.collections.ObservableMap
addListener, removeListener
-
Methods inherited from interface javafx.beans.value.ObservableObjectValue
get
-
Methods inherited from interface javafx.beans.value.ObservableValue
addListener, removeListener
-
-
-
-
Property Detail
-
size
public abstract ReadOnlyIntegerProperty sizeProperty
表示地图大小的整数属性。- 另请参见:
-
getSize()
-
empty
public abstract ReadOnlyBooleanProperty emptyProperty
一个布尔属性是true,如果地图是空的。- 另请参见:
-
isEmpty()
-
-
方法详细信息
-
getValue
public ObservableMap<K,V> getValue()
说明从界面ObservableValue复制返回此ObservableValue的当前值- Specified by:
-
getValue在接口ObservableValue<K> - 结果
- 当前值
-
mapExpression
public static <K,V> MapExpression<K,V> mapExpression(ObservableMapValue<K,V> value)
返回一个MapExpression,其中包含一个ObservableMapValue。 如果ObservableMapValue已经是MapExpression,它将被返回。 否则,一个新的MapBinding被创建绑定到ObservableMapValue。- 参数类型
-
K- 关键元素的类型 -
V- 值元素的类型 - 参数
-
value- 来源ObservableMapValue - 结果
-
一个
MapExpression包装了ObservableMapValue如果有必要 - 异常
-
NullPointerException- 如果value是null
-
getSize
public int getSize()
地图的大小- 结果
- 尺寸
-
sizeProperty
public abstract ReadOnlyIntegerProperty sizeProperty()
表示地图大小的整数属性。- 另请参见:
-
getSize()
-
emptyProperty
public abstract ReadOnlyBooleanProperty emptyProperty()
一个布尔属性是true,如果地图是空的。- 另请参见:
-
isEmpty()
-
valueAt
public ObjectBinding<V> valueAt(K key)
创建一个新的ObjectBinding,其中包含指定键的映射。- 参数
-
key- 映射的关键 - 结果
-
ObjectBinding
-
valueAt
public ObjectBinding<V> valueAt(ObservableValue<K> key)
创建一个新的ObjectBinding,其中包含指定键的映射。- 参数
-
key- 映射的关键 - 结果
-
ObjectBinding - 异常
-
NullPointerException- 如果key是null
-
isEqualTo
public BooleanBinding isEqualTo(ObservableMap<?,?> other)
创建一个新的BooleanBinding持有true如果此映射等于另一个ObservableMap。- 参数
-
other- 其他ObservableMap - 结果
-
新的
BooleanBinding - 异常
-
NullPointerException- 如果other是null
-
isNotEqualTo
public BooleanBinding isNotEqualTo(ObservableMap<?,?> other)
创建一个新的BooleanBinding持有true如果此映射不等于另一个ObservableMap。- 参数
-
other- 其他ObservableMap - 结果
-
新的
BooleanBinding - 异常
-
NullPointerException- 如果other是null
-
isNull
public BooleanBinding isNull()
创建一个新的BooleanBinding持有true如果包装映射为null。- 结果
-
新的
BooleanBinding
-
isNotNull
public BooleanBinding isNotNull()
创建一个新的BooleanBinding持有true如果包装地图不是null。- 结果
-
新的
BooleanBinding
-
asString
public StringBinding asString()
创建一个StringBinding持有的价值MapExpression变成了String。 如果这个值MapExpression的变化,价值StringBinding将自动更新。- 结果
-
新的
StringBinding
-
size
public int size()
说明从接口Map复制返回此地图中键值映射的数量。 如果地图包含Integer.MAX_VALUE元素,则返回Integer.MAX_VALUE。
-
isEmpty
public boolean isEmpty()
获取属性的值为空。
-
containsKey
public boolean containsKey(Object obj)
说明从界面Map复制如果此映射包含指定键的映射,则返回true。 更正式地说,返回true当且仅当此映射包含一个键的映射关系k这样Objects.equals(key, k)。 (最多可以有一个这样的映射。)- Specified by:
-
containsKey在接口Map<K,V> - 参数
-
obj- 要在此地图中存在的密钥要进行测试 - 结果
-
true如果此映射包含指定键的映射
-
containsValue
public boolean containsValue(Object obj)
说明从接口Map复制如果此映射将一个或多个键映射到指定的值,则返回true。 更正式地,返回true当且仅当此映射包含的至少一个映射到一个值v使得Objects.equals(value, v)。 对于Map接口的大多数实现,此操作可能需要在地图大小的时间线性。- Specified by:
-
containsValue在接口Map<K,V> - 参数
-
obj- 要在此地图中存在的值要进行测试 - 结果
-
true如果该地图将一个或多个键映射到指定的值
-
put
public V put(K key, V value)
说明从界面Map复制将指定的值与该映射中的指定键相关联(可选操作)。 如果映射先前包含了密钥的映射,则旧值将被指定的值替换。 (如果且仅当m.containsKey(k)将返回true则映射m被称为包含关键字k的映射。)
-
remove
public V remove(Object obj)
说明从界面Map复制如果存在(从可选的操作),从该地图中删除一个键的映射。 更正式地,如果此映射包含从k键到值v的映射,使得Objects.equals(key, k)删除该映射。 (地图最多可以包含一个这样的映射。)返回此映射先前关联密钥的值,或
null如果映射不包含关键字的映射。如果此映射允许空值,则返回值为
null并不一定表示该映射不包含该键的映射; 地图也可能将密钥显式映射到null。一旦呼叫返回,该映射将不包含指定键的映射。
-
clear
public void clear()
说明从界面Map复制从该地图中删除所有的映射(可选操作)。 此呼叫返回后,地图将为空。
-
keySet
public Set<K> keySet()
说明从界面Map复制返回此地图中包含的键的Set视图。 该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。 如果在集合中的迭代正在进行中修改映射(除了通过迭代器自己的remove操作),迭代的结果是未定义的。 该组支持元件移除,即从映射中相应的映射,经由Iterator.remove,Set.remove,removeAll,retainAll,和clear操作。 它不支持add或addAll操作。
-
values
public Collection<V> values()
描述从界面Map复制返回此地图中包含的值的Collection视图。 集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。 如果在集合中的迭代正在进行中修改映射(除了通过迭代器自己的remove操作),迭代的结果是未定义的。 该collection支持元素移除,即从映射中相应的映射,经由Iterator.remove,Collection.remove,removeAll,retainAll和clear操作。 它不支持add或addAll操作。
-
entrySet
public Set<Map.Entry<K,V>> entrySet()
描述从接口Map复制返回此地图中包含的映射的Set视图。 该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。 如果在集合中的迭代正在进行中修改映射(除了通过迭代器自己的remove操作,或者通过迭代器返回的映射条目上的setValue操作),迭代的结果是未定义的。 该组支持元件移除,即从映射中相应的映射,经由Iterator.remove,Set.remove,removeAll,retainAll和clear操作。 它不支持add或addAll操作。
-
get
public V get(Object key)
描述从接口Map复制返回指定键映射到的值,如果此映射不包含该键的映射,则返回null。更正式地,如果此映射包含从密钥映射
k到值v使得Objects.equals(key, k),则此方法返回v; 否则返回null。 (最多可以有一个这样的映射。)如果此映射允许空值,则返回值为
null并不一定表示该映射不包含该键的映射; 地图也可能显式地将密钥映射到null。 可以使用containsKey操作来区分这两种情况。
-
-