阅读(195) (8)

鸿蒙OS BasePacMap

2022-08-16 15:13:04 更新

BasePacMap

java.lang.Object

|---ohos.utils.BasePacMap

public class BasePacMap
extends Object
implements Sequenceable, Cloneable

存储和读取基本类型的数据。

该类是 PacMap 的基类。 不建议您直接使用此类。

嵌套类摘要

从接口 ohos.utils.Sequenceable 继承的嵌套类/接口
Sequenceable.ProducerT

字段摘要

修饰符和类型 字段 描述
protected HashMapString,Object dataMap BasePacMap中存储键值对的Hashmap。

构造函数摘要

构造函数 描述
BasePacMap() 用于创建 BasePacMap 实例的默认构造函数,其中 Map 对象没有键值对。
BasePacMap(int capacity) 用于创建具有 Map 指定的键值对数量的 BasePacMap 实例的构造函数。

方法总结

修饰符和类型 方法 描述
void clear() 清除当前对象。
protected Object clone() 创建并返回此对象的副本。
boolean equals(Object object) 指示其他对象是否“等于”这个对象。
protected MapString,Object getAll() 获取已存储的所有数据。
boolean getBooleanValue(String key) 获取与指定键匹配的布尔值。
boolean getBooleanValue(String key, boolean defaultValue) 获取与指定键匹配的布尔值。
boolean[] getBooleanValueArray(String key) 获取与指定键匹配的 boolean[] 值。
byte getByteValue(String key) 获取与指定键匹配的字节值。
byte getByteValue(String key, byte defaultValue) 获取与指定键匹配的字节值。
byte[] getByteValueArray(String key) 获取匹配指定key的byte[]值。
char getChar(String key) 获取与指定键匹配的字符值。
char getChar(String key, char defaultValue) 获取与指定键匹配的字符值。
char[] getCharArray(String key) 获取与指定键匹配的 char[] 值。
ClassLoader getClassLoader() 获取此 PacMap 实例中的内部对象使用的 ClassLoader。
Dimension getDimension(String key) 根据指定键获取 PacMap 中的 Dimension 对象。
double getDoubleValue(String key) 获取与指定键匹配的双精度值。
double getDoubleValue(String key, double defaultValue) 获取与指定键匹配的双精度值。
double[] getDoubleValueArray(String key) 获取与指定键匹配的 double[] 值。
FloatDimension getFloatDimension(String key) 根据指定键获取 PacMap 中的 FloatDimension 对象。
float getFloatValue(String key) 获取与指定键匹配的浮点值。
float getFloatValue(String key, float defaultValue) 获取与指定键匹配的浮点值。
float[] getFloatValueArray(String key) 获取与指定键匹配的 float[] 值。
int getIntValue(String key) 获取与指定键匹配的 int 值。
int getIntValue(String key, int defaultValue) 获取与指定键匹配的 int 值。
int[] getIntValueArray(String key) 获取与指定键匹配的 int[] 值。
SetString getKeys() 获取当前对象的所有键。
long getLongValue(String key) 获取与指定key匹配的long值。
long getLongValue(String key, long defaultValue) 获取与指定key匹配的long值。
long[] getLongValueArray(String key) 获取与指定键匹配的 long[] 值。
OptionalObject getObjectValue(String key) 获取具有指定键的对象。
protected <T> Optional<T> getObjectValue(String key, Class<T> clazz) 获取具有指定键和对象类型的对象。
PlainArray<?> getPlainArray(String key) 根据指定键获取 PlainArray<T> 对象。
<T> T getRemoteObject(String key, Class<T> clz) 根据指定键获取 IRemoteObject。
short getShortValue(String key) 获取与指定键匹配的短值。
short getShortValue(String key, short defaultValue) 获取与指定键匹配的短值。
short[] getShortValueArray(String key) 获取与指定键匹配的 short[] 值。
int getSize() 获取当前对象中存储的键值对的数量。
String getString(String key) 获取与指定键匹配的字符串值。
String getString(String key, String defaultValue) 获取与指定键匹配的字符串值。
String[] getStringArray(String key) 获取与指定键匹配的 String[] 值。
boolean hasFileDescriptor() 检查此 Sequenceable 的实现类是否包含 FileDescriptor 对象数据。
int hashCode() 返回对象的哈希码值。
boolean hasKey(String key) 检查是否包含指定的键。
boolean isEmpty() 检查当前对象是否为空。
boolean marshalling(Parcel out) 将 Sequenceable 对象写入 Parcel。
protected void putAll(MapString,Object map) 将 Map 对象的所有键值对插入到内置数据对象中。
void putAll(BasePacMap map) 将键值对保存在当前对象的 BasePacMap 对象中。
void putBooleanValue(String key, boolean value) 添加与指定键匹配的布尔值。
void putBooleanValueArray(String key, boolean[] value) 添加与指定键匹配的 boolean[] 值。
void putByteValue(String key, byte value) 添加与指定键匹配的字节值。
void putByteValueArray(String key, byte[] value) 添加与指定键匹配的 byte[] 值。
void putChar(String key, char value) 添加与指定键匹配的 char 值。
void putCharArray(String key, char[] value) 添加与指定键匹配的 char[] 值。
void putDimension(String key, Dimension value) 将键为 String 且值为 Dimension 的键值对插入 PacMap。
void putDoubleValue(String key, double value) 添加与指定键匹配的双精度值。
void putDoubleValueArray(String key, double[] value) 添加与指定键匹配的 double[] 值。
void putFloatDimension(String key, FloatDimension value) 将键为 String 且值为 FloatDimension 的键值对插入 PacMap。
void putFloatValue(String key, float value) 添加与指定键匹配的浮点值。
void putFloatValueArray(String key, float[] value) 添加与指定键匹配的 float[] 值。
void putIntValue(String key, int value) 添加与指定键匹配的 int 值。
void putIntValueArray(String key, int[] value) 添加与指定键匹配的 int[] 值。
void putLongValue(String key, long value) 添加与指定键匹配的长值。
void putLongValueArray(String key, long[] value) 添加与指定键匹配的 long[] 值。
protected void putObjectValue(String key, Object value) 添加具有指定键的通用对象。
void putPlainArray(String key, PlainArray<? extends Sequenceable> value) 将键为 String 且值为 PlainArray 的键值对插入 PacMap。
void putRemoteObject(String key, Object value) 将键为 String 且值为 Object 的键值对插入到 PacMap 中。
void putShortValue(String key, short value) 添加与指定键匹配的短值。
void putShortValueArray(String key, short[] value) 添加一个与指定键匹配的 short[] 值。
void putString(String key, String value) 添加与指定键匹配的字符串值。
void putStringArray(String key, String[] value) 添加与指定键匹配的 String[] 值。
void remove(String key) 删除具有指定键的键值对。
void setClassLoader(ClassLoader loader) 设置用于在此 PacMap 实例中创建内部对象的 ClassLoader。
boolean unmarshalling(Parcel in) 从 Parcel 中恢复一个 Sequenceable 对象。
从类 java.lang.Object 继承的方法
finalize, getClass, notify, notifyAll, toString, wait, wait, wait

字段详细信息

dataMap

protected HashMapString,Object dataMap

BasePacMap中存储键值对的Hashmap。 子类可以访问此变量。

构造函数详细信息

BasePacMap

public BasePacMap(int capacity)

用于创建具有 Map 指定的键值对数量的 BasePacMap 实例的构造函数。

参数:

参数名称 参数描述
capacity 表示 Map 指定的键值对的数量。

BasePacMap

public BasePacMap()

用于创建 BasePacMap 实例的默认构造函数,其中 Map 对象没有键值对。

方法详情

putAll

public void putAll(BasePacMap map)

将键值对保存在当前对象的 BasePacMap 对象中。

参数:

参数名称 参数描述
map 指示要保存其键值对的 BasePacMap 对象。

putAll

protected void putAll(MapString,Object map)

将 Map 对象的所有键值对插入到内置数据对象中。

参数:

参数名称 参数描述
map 表示键为字符串的 Map 对象。

putObjectValue

protected void putObjectValue(String key, Object value)

添加具有指定键的通用对象。 如果已存在具有相同键的对象,则该对象将被添加的对象替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的对象。

putByteValue

public void putByteValue(String key, byte value)

添加与指定键匹配的字节值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的字节值。

putShortValue

public void putShortValue(String key, short value)

添加与指定键匹配的短值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的短值。

putIntValue

public void putIntValue(String key, int value)

添加与指定键匹配的 int 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的 int 值。

putLongValue

public void putLongValue(String key, long value)

添加与指定键匹配的长值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的长值。

putFloatValue

public void putFloatValue(String key, float value)

添加与指定键匹配的浮点值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的浮点值。

putDoubleValue

public void putDoubleValue(String key, double value)

添加与指定键匹配的双精度值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 指示要添加的双精度值。

putBooleanValue

public void putBooleanValue(String key, boolean value)

添加与指定键匹配的布尔值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的布尔值。

putChar

public void putChar(String key, char value)

添加与指定键匹配的 char 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的 char 值。

putString

public void putString(String key, String value)

添加与指定键匹配的字符串值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的字符串值。

putByteValueArray

public void putByteValueArray(String key, byte[] value)

添加与指定键匹配的 byte[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的 byte[] 值。

putShortValueArray

public void putShortValueArray(String key, short[] value)

添加一个与指定键匹配的 short[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的 short[] 值。

putIntValueArray

public void putIntValueArray(String key, int[] value)

添加与指定键匹配的 int[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 指示要添加的 int[] 值。

putLongValueArray

public void putLongValueArray(String key, long[] value)

添加与指定键匹配的 long[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的 long[] 值。

putFloatValueArray

public void putFloatValueArray(String key, float[] value)

添加与指定键匹配的 float[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 指示要添加的 float[] 值。

putDoubleValueArray

public void putDoubleValueArray(String key, double[] value)

添加与指定键匹配的 double[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的 double[] 值。

putBooleanValueArray

public void putBooleanValueArray(String key, boolean[] value)

添加与指定键匹配的 boolean[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 指示要添加的 boolean[] 值。

putCharArray

public void putCharArray(String key, char[] value)

添加与指定键匹配的 char[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 表示要添加的 char[] 值。

putStringArray

public void putStringArray(String key, String[] value)

添加与指定键匹配的 String[] 值。 如果与键匹配的值已经存在,它将被添加的值替换。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
value 指示要添加的 String[] 值。

setClassLoader

public void setClassLoader(ClassLoader loader)

设置用于在此 PacMap 实例中创建内部对象的 ClassLoader。

参数:

参数名称 参数描述
loader 指示要设置的 ClassLoader。

getClassLoader

public ClassLoader getClassLoader()

获取此 PacMap 实例中的内部对象使用的 ClassLoader。

返回:

返回此 PacMap 实例的内部对象使用的 ClassLoader。

putPlainArray

public void putPlainArray(String key, PlainArray<? extends Sequenceable> value)

将键为 String 且值为 PlainArray 的键值对插入 PacMap。

如果键已存在,则其值将替换为 PlainArray。 否则,插入这个新的键值对。 PlainArray 的元素类型必须继承自 Sequenceable。

参数:

参数名称 参数描述
key 表示String类型的key,可以为null。
value 表示PlainArray类型的值,可以为null。

getPlainArray

public PlainArray<?> getPlainArray(String key)

根据指定键获取 PlainArray<T> 对象。

PlainArray 的元素类型必须继承自 Sequenceable。

参数:

参数名称 参数描述
key 表示String类型的key。

返回:

返回存储在此 PacMap 实例中的 PlainArray 对象; 如果 PlainArray 不存在或转换为指定类型失败,则返回 null。

putRemoteObject

public void putRemoteObject(String key, Object value)

将键为 String 且值为 Object 的键值对插入到 PacMap 中。

如果键已存在,则其值将替换为 Object。 否则,插入这个新的键值对。 该方法是使用反射机制实现的,因此 value 必须是 IRemoteObject 类型。 在编组或解组此 BasePacMap 时,您必须使用继承自 Parcel 的 MessageParcel 以获得正确的 ohos.rpc.IRemoteObject 值。

参数:

参数名称 参数描述
key 表示String类型的key,可以为null。
value 表示 Object 类型的值。

Throws:

Throw名称 Throw描述
ParcelException 如果值为 null 或不是 ohos.rpc.IRemoteObject,则引发此异常。

getRemoteObject

public <T> T getRemoteObject(String key, Class<T> clz)

根据指定键获取 IRemoteObject。

该方法是通过反射机制实现的,所以返回的T值必须是ohos.rpc.IRemoteObject。在编组或解组这个BasePacMap时,必须使用继承自Parcel的MessageParcel,才能得到正确的ohos.rpc.IRemoteObject值。

类型参数:

类型参数名称 类型参数描述
T 返回值类型,必须是ohos.rpc.IRemoteObject类型或其子类。

参数:

参数名称 参数描述
key 表示String类型的key。
clz IRemoteObject 的类类型,应该是 ohos.rpc.IRemoteObject

返回:

返回存储在此 PacMap 实例中的 IRemoteObject; 如果 Object 不存在或转换为 <T> 类型失败,则返回 null。

Throws:

Throw名称 Throw描述
ParcelException 如果与键匹配的对象不是 IRemoteObject 类型,则引发此异常。

putDimension

public void putDimension(String key, Dimension value)

将键为 String 且值为 Dimension 的键值对插入 PacMap。

参数:

参数名称 参数描述
key 表示String类型的key,可以为null。
value 表示Dimension类型的值,可以为null。

getDimension

public Dimension getDimension(String key)

根据指定键获取 PacMap 中的 Dimension 对象。

参数:

参数名称 参数描述
key 表示String类型的key。

返回:

返回指定键的 Dimension 对象; 如果查询失败,则返回 null。

putFloatDimension

public void putFloatDimension(String key, FloatDimension value)

将键为 String 且值为 FloatDimension 的键值对插入 PacMap。

参数:

参数名称 参数描述
key 表示String类型的key,可以为null。
value 表示 FloatDimension 类型的值,可以为 null。

getFloatDimension

public FloatDimension getFloatDimension(String key)

根据指定键获取 PacMap 中的 FloatDimension 对象。

参数:

参数名称 参数描述
key 表示String类型的key。

返回:

返回指定键的 FloatDimension 对象; 如果查询失败,则返回 null。

getAll

protected MapString,Object getAll()

获取已存储的所有数据。

返回:

返回一个包含字符串格式键的 Map 对象。

getObjectValue

public OptionalObject getObjectValue(String key)

获取具有指定键的对象。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回指定key的对象,封装在Optional中; 如果没有找到这样的对象,则返回 null。

getObjectValue

protected final <T> Optional<T> getObjectValue(String key, Class<T> clazz)

获取具有指定键和对象类型的对象。

类型参数:

类型参数名称 类型参数描述
T 模板参数。

参数:

参数名称 参数描述
key 表示String格式的键值对,可以为null。
clazz 指定数据的类型。

返回:

返回具有指定键值对的对象,由 Optional 封装; 如果没有找到这样的对象,则返回 null。

getByteValue

public byte getByteValue(String key, byte defaultValue)

获取与指定键匹配的字节值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回匹配指定键的字节值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getByteValue

public byte getByteValue(String key)

获取与指定键匹配的字节值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回匹配指定键的字节值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 0。

getShortValue

public short getShortValue(String key, short defaultValue)

获取与指定键匹配的短值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回与指定键匹配的短值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getShortValue

public short getShortValue(String key)

获取与指定键匹配的短值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的短值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 0。

getIntValue

public int getIntValue(String key, int defaultValue)

获取与指定键匹配的 int 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回与指定键匹配的 int 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getIntValue

public int getIntValue(String key)

获取与指定键匹配的 int 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 int 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 0。

getLongValue

public long getLongValue(String key, long defaultValue)

获取与指定key匹配的long值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回匹配指定key的long值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getLongValue

public long getLongValue(String key)

获取与指定key匹配的long值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回匹配指定key的long值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 0。

getFloatValue

public float getFloatValue(String key, float defaultValue)

获取与指定键匹配的浮点值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回与指定键匹配的浮点值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getFloatValue

public float getFloatValue(String key)

获取与指定键匹配的浮点值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的浮点值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 0。

getDoubleValue

public double getDoubleValue(String key, double defaultValue)

获取与指定键匹配的双精度值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回与指定键匹配的双精度值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getDoubleValue

public double getDoubleValue(String key)

获取与指定键匹配的双精度值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的双精度值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 0。

getBooleanValue

public boolean getBooleanValue(String key, boolean defaultValue)

获取与指定键匹配的布尔值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回与指定键匹配的布尔值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getBooleanValue

public boolean getBooleanValue(String key)

获取与指定键匹配的布尔值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的布尔值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 false。

getChar

public char getChar(String key, char defaultValue)

获取与指定键匹配的字符值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回与指定键匹配的 char 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getChar

public char getChar(String key)

获取与指定键匹配的字符值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 char 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 0。

getString

public String getString(String key, String defaultValue)

获取与指定键匹配的字符串值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。
defaultValue 表示未找到与该键匹配的值或找到其他类型的值时返回的默认值。

返回:

返回与指定键匹配的字符串值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 defaultValue。

getString

public String getString(String key)

获取与指定键匹配的字符串值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的字符串值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getByteValueArray

public byte[] getByteValueArray(String key)

获取匹配指定key的byte[]值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回匹配指定key的byte[]值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getShortValueArray

public short[] getShortValueArray(String key)

获取与指定键匹配的 short[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 short[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getIntValueArray

public int[] getIntValueArray(String key)

获取与指定键匹配的 int[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 int[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getLongValueArray

public long[] getLongValueArray(String key)

获取与指定键匹配的 long[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 long[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getFloatValueArray

public float[] getFloatValueArray(String key)

获取与指定键匹配的 float[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 float[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getDoubleValueArray

public double[] getDoubleValueArray(String key)

获取与指定键匹配的 double[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 double[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getBooleanValueArray

public boolean[] getBooleanValueArray(String key)

获取与指定键匹配的 boolean[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 boolean[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getCharArray

public char[] getCharArray(String key)

获取与指定键匹配的 char[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 char[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getStringArray

public String[] getStringArray(String key)

获取与指定键匹配的 String[] 值。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

返回与指定键匹配的 String[] 值; 如果没有找到与键匹配的值或找到其他类型的值,则返回 null。

getSize

public int getSize()

获取当前对象中存储的键值对的数量。

返回:

返回键值对的数量。

isEmpty

public boolean isEmpty()

检查当前对象是否为空。

返回:

如果当前对象为空,则返回 true; 否则返回 false。

getKeys

public SetString getKeys()

获取当前对象的所有键。

返回:

返回当前对象的所有键。

hasKey

public boolean hasKey(String key)

检查是否包含指定的键。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

返回:

如果包含键,则返回 true; 否则返回 false。

remove

public void remove(String key)

删除具有指定键的键值对。

参数:

参数名称 参数描述
key 表示String格式的key,可以为null。

clear

public void clear()

清除当前对象。

marshalling

public boolean marshalling(Parcel out)

将 Sequenceable 对象写入 Parcel。

指定者:

接口 Sequenceable 中的编组

参数:

参数名称 参数描述
out 指示将写入 Sequenceable 对象的 Parcel 对象。

返回:

如果编组成功,则返回 true; 否则返回 false。

unmarshalling

public boolean unmarshalling(Parcel in)

从 Parcel 中恢复一个 Sequenceable 对象。

指定者:

在接口 Sequenceable 中解组

参数:

参数名称 参数描述
in 指示已写入 Sequenceable 对象的 Parcel 对象。

返回:

如果解组成功,则返回 true; 否则返回 false。

equals

public boolean equals(Object object)

从类复制的描述:对象

指示其他对象是否“等于”这个对象。

equals 方法在非空对象引用上实现等价关系:

  • 它是自反的:对于任何非空引用值 x,x.equals(x) 应该返回 true。
  • 它是对称的:对于任何非空引用值 x 和 y,当且仅当 y.equals(x) 返回 true 时,x.equals(y) 才应该返回 true。
  • 它是可传递的:对于任何非空引用值 x、y 和 z,如果 x.equals(y) 返回 true 并且 y.equals(z) 返回 true,则 x.equals(z) 应该返回 true。
  • 它是一致的:对于任何非空引用值 x 和 y,x.equals(y) 的多次调用始终返回 true 或始终返回 false,前提是没有修改对象上 equals 比较中使用的信息。
  • 对于任何非空引用值 x,x.equals(null) 应该返回 false。

Object 类的 equals 方法实现了对象上最有区别的可能等价关系; 也就是说,对于任何非空引用值 x 和 y,当且仅当 x 和 y 引用同一个对象(x == y 的值为 true)时,此方法才返回 true。

请注意,每当重写该方法时,通常都需要重写 hashCode 方法,以维护 hashCode 方法的一般约定,即相等的对象必须具有相等的哈希码。

覆盖:

类 Object 中的等于

参数:

参数名称 参数描述
object 要与之比较的参考对象。

返回:

如果此对象与 obj 参数相同,则为 true; 否则为 false。

hashCode

public int hashCode()

从类复制的描述:对象

返回对象的哈希码值。 支持这种方法是为了有利于哈希表,例如 HashMap 提供的那些。

hashCode 的一般合约是:

  • 每当在 Java 应用程序执行期间对同一对象多次调用时,hashCode 方法必须始终返回相同的整数,前提是没有修改对象上相等比较中使用的信息。 该整数不需要从应用程序的一次执行到同一应用程序的另一次执行保持一致。
  • 如果两个对象根据 equals(Object) 方法相等,则对两个对象中的每一个调用 hashCode 方法必须产生相同的整数结果。
  • 如果根据 Object.equals(java.lang.Object) 方法,如果两个对象不相等,则不要求对两个对象中的每一个调用 hashCode 方法必须产生不同的整数结果。 但是,程序员应该意识到,为不相等的对象生成不同的整数结果可能会提高哈希表的性能。

在合理可行的情况下,由 Object 类定义的 hashCode 方法确实为不同的对象返回不同的整数。 (这通常通过将对象的内部地址转换为整数来实现,但 Java™ 编程语言不需要这种实现技术。)

覆盖:

类 Object 中的 hashCode

返回:

此对象的哈希码值。

clone

protected Object clone() throws CloneNotSupportedException

从类复制的描述:对象

创建并返回此对象的副本。 “复制”的确切含义可能取决于对象的类别。 一般意图是,对于任何对象 x,表达式:

 x.clone() != x

将为 true,并且表达式:

 x.clone().getClass() == x.getClass()

将为 true,但这些不是绝对的要求。 虽然通常是这样的:

 x.clone().equals(x)

将为 true,这不是一个绝对的要求。

按照约定,返回的对象应该通过调用 super.clone 来获取。如果一个类及其所有超类(Object 除外)都遵守这个约定,那么 x.clone().getClass() == x.getClass() 就是这种情况。

按照惯例,此方法返回的对象应独立于此对象(正在克隆)。为了实现这种独立性,可能需要在返回 super.clone 之前修改对象的一个或多个字段。通常,这意味着复制任何包含被克隆对象的内部“深层结构”的可变对象,并将对这些对象的引用替换为对副本的引用。如果一个类只包含原始字段或对不可变对象的引用,那么通常情况下 super.clone 返回的对象中不需要修改任何字段。

类 Object 的方法 clone 执行特定的克隆操作。首先,如果该对象的类没有实现接口 Cloneable,则抛出 CloneNotSupportedException。请注意,所有数组都被认为实现了接口 Cloneable,并且数组类型 T[] 的克隆方法的返回类型是 T[],其中 T 是任何引用或原始类型。否则,此方法会创建此对象的类的新实例,并使用此对象的相应字段的内容来初始化其所有字段,就像通过赋值一样;字段的内容本身不会被克隆。因此,此方法执行此对象的“浅拷贝”,而不是“深拷贝”操作。

Object 类本身并没有实现接口 Cloneable,因此在类为 Object 的对象上调用 clone 方法将导致在运行时抛出异常。

覆盖:

在类 Object 中克隆

返回:

此实例的克隆。

Throws:

Throw名称 Throw描述
CloneNotSupportedException 如果对象的类不支持 Cloneable 接口。 覆盖 clone 方法的子类也可以抛出此异常,表示无法克隆实例。

hasFileDescriptor

public boolean hasFileDescriptor()

从接口复制的描述:Sequenceable

检查此 Sequenceable 的实现类是否包含 FileDescriptor 对象数据。

如果自定义 Sequenceable 类包含任何 FileDescriptor 数据,则应覆盖此方法。 此方法默认返回 false。

指定者:

接口 Sequenceable 中的 hasFileDescriptor

返回:

如果它包含 FileDescriptor 数据,则返回 true; 否则返回 false。