java.lang.Object
java.util.jar.Attributes
Attributes类将清单属性名称映射到关联的字符串值。有效的属性名称不区分大小写,限制为ASCII字符集中的[0-9a-zA-Z_-],且长度不超过70个字符。名称后必须有冒号和空格;组合长度不超过72个字符。属性值可以包含任何字符,在写入输出流时将进行UTF8编码。有关有效属性名称和值的更多信息,请参阅JAR文件规范。
此映射及其视图具有可预测的迭代顺序,即键插入到映射中的顺序,与LinkedHashMap相同。
- 自:
- 1.2
- 外部规范
- 另请参阅:
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescription使用默认大小构造一个新的空Attributes对象。Attributes(int size) 使用指定的初始大小构造一个新的空Attributes对象。Attributes(Attributes attr) 使用指定Attributes中的相同属性名称-值映射构造一个新的Attributes对象。 -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()从此Map中删除所有属性。clone()返回Attributes的副本,实现如下:booleancontainsKey(Object name) 如果此Map包含指定的属性名称(键),则返回true。booleancontainsValue(Object value) 如果此Map将一个或多个属性名称(键)映射到指定值,则返回true。entrySet()返回此Map中包含的属性名称-值映射的Collection视图。boolean将指定对象与底层map进行比较以检查是否相等。返回指定属性名称的值,如果未找到属性名称,则返回null。返回指定属性名称的值,指定为字符串,如果未找到属性,则返回null。getValue(Attributes.Name name) 返回指定Attributes.Name的值,如果未找到属性,则返回null。inthashCode()返回此Map的哈希码值。booleanisEmpty()如果此Map不包含属性,则返回true。keySet()返回此Map中包含的属性名称(键)的Set视图。将指定值与指定属性名称(键)关联在此Map中。void从指定的Attributes复制所有属性名称-值映射到此Map中。将指定值与指定为String的属性名称关联在此Map中。从此Map中删除具有指定名称(键)的属性。intsize()返回此Map中的属性数量。values()返回此Map中包含的属性值的Collection视图。Methods declared in class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods declared in interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Field Details
-
map
属性名称-值映射。
-
-
Constructor Details
-
Attributes
public Attributes()使用默认大小构造一个新的空Attributes对象。 -
Attributes
public Attributes(int size) 使用指定的初始大小构造一个新的空Attributes对象。- 参数:
-
size- 属性的初始数量
-
Attributes
使用指定Attributes中的相同属性名称-值映射构造一个新的Attributes对象。- 参数:
-
attr- 指定的Attributes
-
-
Method Details
-
get
返回指定属性名称的值,如果未找到属性名称,则返回null。 -
getValue
返回指定属性名称的值,指定为字符串,如果未找到属性,则返回null。属性名称不区分大小写。此方法定义如下:
return (String)get(new Attributes.Name((String)name));
- 参数:
-
name- 属性名称作为字符串 - 返回:
- 指定属性名称的字符串值,如果未找到则返回null。
- 抛出:
-
IllegalArgumentException- 如果属性名称无效
-
getValue
返回指定Attributes.Name的值,如果未找到属性,则返回null。此方法定义如下:
return (String)get(name);
- 参数:
-
name- Attributes.Name对象 - 返回:
- 指定Attribute.Name的字符串值,如果未找到则返回null。
-
put
将指定值与指定属性名称(键)关联在此Map中。如果Map先前包含属性名称的映射,则旧值将被替换。- 指定者:
-
put在接口Map<Object,Object> - 参数:
-
name- 属性名称 -
value- 属性值 - 返回:
- 属性的先前值,如果没有则为null
- 抛出:
-
ClassCastException- 如果名称不是Attributes.Name或值不是String
-
putValue
将指定值与指定属性名称作为String关联在此Map中。属性名称不区分大小写。如果Map先前包含属性名称的映射,则旧值将被替换。此方法定义如下:
return (String)put(new Attributes.Name(name), value);
- 参数:
-
name- 属性名称作为字符串 -
value- 属性值 - 返回:
- 属性的先前值,如果没有则为null
- 抛出:
-
IllegalArgumentException- 如果属性名称无效
-
remove
从此Map中删除具有指定名称(键)的属性。返回先前的属性值,如果没有则为null。 -
containsValue
如果此Map将一个或多个属性名称(键)映射到指定值,则返回true。- 指定者:
-
containsValue在接口Map<Object,Object> - 参数:
-
value- 属性值 - 返回:
- 如果此Map将一个或多个属性名称映射到指定值,则返回true
-
containsKey
如果此Map包含指定的属性名称(键),则返回true。- 指定者:
-
containsKey在接口Map<Object,Object> - 参数:
-
name- 属性名称 - 返回:
- 如果此Map包含指定的属性名称,则返回true
-
putAll
从指定的Attributes复制所有属性名称-值映射到此Map中。重复的映射将被替换。- 指定者:
-
putAll在接口Map<Object,Object> - 参数:
-
attr- 要存储在此映射中的Attributes - 抛出:
-
ClassCastException- 如果attr不是Attributes
-
clear
public void clear()删除此Map中的所有属性。 -
size
public int size()返回此Map中的属性数量。 -
isEmpty
public boolean isEmpty()如果此Map不包含任何属性,则返回true。 -
keySet
返回此Map中包含的属性名称(键)的Set视图。 -
values
返回此Map中包含的属性值的Collection视图。 -
entrySet
返回此Map中包含的属性名称-值映射的Collection视图。 -
equals
将指定的对象与底层map进行比较以确定是否相等。 如果给定对象也是一个Map,并且两个映射表示相同的映射,则返回true。 -
hashCode
public int hashCode()返回此Map的哈希码值。 -
clone
返回Attributes的副本,实现如下:public Object clone() { return new Attributes(this); }由于属性名称和值本身是不可变的,因此返回的Attributes可以安全地修改而不会影响原始对象。
-