java.lang.Object
java.util.jar.Attributes
Attributes 类将 Manifest 属性名称映射到关联的字符串值。有效的属性名称不区分大小写,仅限于集合 [0-9a-zA-Z_-] 中的 ASCII 字符,并且长度不能超过 70 个字符。名称后必须有一个冒号和一个空格;组合长度不会超过 72 个字符。属性值可以包含任何字符,并且在写入输出流时将采用 UTF8 编码。有关有效属性名称和值的更多信息,请参阅 JAR 文件规范。
该map及其视图具有可预测的迭代顺序,即键插入map的顺序,与 LinkedHashMap
一样。
- 自从:
- 1.2
- 参见:
-
内部类总结
内部类 -
字段摘要
字段 -
构造方法总结
构造方法构造方法描述构造一个具有默认大小的新的空 Attributes 对象。Attributes
(int size) 构造一个具有指定初始大小的新的空 Attributes 对象。Attributes
(Attributes attr) 构造一个新的 Attributes 对象,该对象具有与指定 Attributes 中相同的属性名称-值映射。 -
方法总结
修饰符和类型方法描述void
clear()
从此map中删除所有属性。clone()
返回属性的副本,实现如下:boolean
containsKey
(Object name) 如果此 Map 包含指定的属性名称(键),则返回 true。boolean
containsValue
(Object value) 如果此 Map 将一个或多个属性名称(键)映射到指定值,则返回 true。entrySet()
返回此 Map 中包含的属性名称-值映射的 Collection 视图。boolean
比较指定对象与底层 map 是否相等。返回指定属性名称的值,如果未找到属性名称,则返回 null。返回指定属性名称的值,指定为字符串;如果未找到该属性,则返回 null。getValue
(Attributes.Name name) 返回指定的 Attributes.Name 的值,如果未找到该属性,则返回 null。int
hashCode()
返回此 Map 的哈希码值。boolean
isEmpty()
如果此 Map 不包含任何属性,则返回 true。keySet()
返回此 Map 中包含的属性名称(键)的 Set 视图。将指定值与此 Map 中指定的属性名称(键)相关联。void
将指定属性中的所有属性名称-值映射复制到此map。将指定的值与指定的属性名称相关联,指定为字符串。从此map中删除具有指定名称(键)的属性。int
size()
返回此 Map 中的属性数。values()
返回此 Map 中包含的属性值的 Collection 视图。在接口 java.util.Map 中声明的方法
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
字段详细信息
-
map
属性名称-值映射。
-
-
构造方法详细信息
-
Attributes
public Attributes()构造一个具有默认大小的新的空 Attributes 对象。 -
Attributes
public Attributes(int size) 构造一个具有指定初始大小的新的空 Attributes 对象。- 参数:
size
- 属性的初始数量
-
Attributes
构造一个新的 Attributes 对象,该对象具有与指定 Attributes 中相同的属性名称-值映射。- 参数:
attr
- 指定的属性
-
-
方法详情
-
get
返回指定属性名称的值,如果未找到属性名称,则返回 null。 -
getValue
返回指定属性名称的值,指定为字符串;如果未找到该属性,则返回 null。属性名称不区分大小写。此方法定义为:
return (String)get(new Attributes.Name((String)name));
- 参数:
name
- 作为字符串的属性名称- 返回:
- 指定属性名称的 String 值,如果未找到则为 null。
- 抛出:
IllegalArgumentException
- 如果属性名称无效
-
getValue
返回指定的 Attributes.Name 的值,如果未找到该属性,则返回 null。此方法定义为:
return (String)get(name);
- 参数:
name
- Attributes.Name 对象- 返回:
- 指定 Attribute.Name 的 String 值,如果未找到则为 null。
-
put
将指定值与此 Map 中指定的属性名称(键)相关联。如果 Map 先前包含属性名称的映射,则旧值将被替换。- 指定者:
put
在接口Map<Object,
中Object> - 参数:
name
- 属性名称value
- 属性值- 返回:
- 属性的先前值,如果没有则为 null
- 抛出:
ClassCastException
- 如果名称不是 Attributes.Name 或值不是 String
-
putValue
将指定的值与指定的属性名称相关联,指定为字符串。属性名称不区分大小写。如果 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
将指定属性中的所有属性名称-值映射复制到此map。重复的映射将被替换。- 指定者:
putAll
在接口Map<Object,
中Object> - 参数:
attr
- 要存储在此map中的属性- 抛出:
ClassCastException
- 如果 attr 不是属性
-
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 而不会影响原始属性。
-