av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSParcel

Parcel

創(chuàng)新互聯(lián)網絡公司擁有10余年的成都網站開發(fā)建設經驗,1000+客戶的共同信賴。提供成都做網站、成都網站制作、成都外貿網站建設、網站開發(fā)、網站定制、賣友情鏈接、建網站、網站搭建、自適應網站建設、網頁設計師打造企業(yè)風格,提供周到的售前咨詢和貼心的售后服務

java.lang.Object

|---ohos.utils.Parcel

public class Parcel
extends Object

用于進程間通信 (IPC) 的數據對象。

在 IPC 過程中,發(fā)送方可以使用 Parcel 提供的 write 方法將要發(fā)送的數據以特定格式寫入 Parcel 對象,接收方可以使用 Parcel 提供的 read 方法從 包裹對象。

Parcel 實例的默認容量為 200KB。 如果您想要更多或更少,請使用 setCapacity(int) 更改它。

注意:只有以下數據類型的數據可以寫入或讀取 Parcel:byte、byteArray、short、shortArray、int、intArray、long、longArray、float、floatArray、double、doubleArray、boolean、booleanArray、char、charArray 、字符串、StringArray、PlainBooleanArray、Serializable、Sequenceable 和 SequenceableArray。

構造函數摘要

修飾符 構造函數 描述
protected Parcel()

方法總結

修飾符和類型 方法 描述
void addAppClassLoader(ClassLoader newClassLoader) 添加第三方 ClassLoader 用于實例初始化。
boolean appendFrom(Parcel other) 將指定 Parcel 對象的序列化值附加到此 Parcel 實例。
static Parcel create() 創(chuàng)建一個空的 Parcel 實例。
static Parcel create(long nativeHandler) 使用指定的處理程序創(chuàng)建一個空 Parcel 實例。
T createSequenceable() 使用 Sequenceable.Producer#createFromParcel(Parcel) 從 Parcel 創(chuàng)建特定的 Sequenceable 對象。
T createSequenceable(ClassLoader classLoader) 使用 Sequenceable.Producer#createFromParcel(Parcel) 從 Parcel 創(chuàng)建特定的 Sequenceable 對象。
Sequenceable[] createSequenceableArray() 使用 Sequenceable.Producer#createFromParcel(Parcel) 從 Parcel 創(chuàng)建一個特定的 Sequenceable 對象數組
protected void finalize() 當垃圾收集確定不再有對該對象的引用時,由對象上的垃圾收集器調用。
protected void flushBuffer() 清除 Parcel 實例中的數據。
byte[] getBytes() 從 Parcel 實例中讀取所有字節(jié)。
int getCapacity() 獲取 Parcel 實例的存儲容量(以字節(jié)為單位)。
int getReadableBytes() 獲取 Parcel 實例中的可讀數據空間(以字節(jié)為單位)。
int getReadPosition() 獲取 Parcel 實例中的當前讀取位置。
int getSize() 獲取 Parcel 實例中包含的數據大?。ㄒ宰止?jié)為單位)。
int getWritableBytes() 獲取 Parcel 實例中的可寫數據空間(以字節(jié)為單位)。
int getWritePosition() 獲取 Parcel 實例中的當前寫入位置。
boolean readBoolean() 從 Parcel 實例中讀取一個布爾值。
boolean[] readBooleanArray() 從 Parcel 實例中讀取一個布爾數組。
void readBooleanArray(boolean[] val) 從 Parcel 實例中讀取一個布爾數組。
byte readByte() 從 Parcel 實例中讀取一個字節(jié)值。
byte[] readByteArray() 從 Parcel 實例中讀取一個字節(jié)數組。
void readByteArray(byte[] val) 從 Parcel 實例中讀取一個字節(jié)數組。
char readChar() 從 Parcel 實例中讀取單個字符值。
char[] readCharArray() 從 Parcel 實例中讀取單個字符數組。
void readCharArray(char[] val) 從 Parcel 實例中讀取單個字符數組。
double readDouble() 從 Parcel 實例中讀取一個雙精度浮點值。
double[] readDoubleArray() 從 Parcel 實例中讀取一個雙精度浮點數組。
void readDoubleArray(double[] val) 從 Parcel 實例中讀取一個雙精度浮點數組。
float readFloat() 從 Parcel 實例中讀取一個浮點值。
float[] readFloatArray() 從 Parcel 實例中讀取一個浮點數組。
void readFloatArray(float[] val) 從 Parcel 實例中讀取一個浮點數組。
int readInt() 從 Parcel 實例中讀取一個整數值。
int[] readIntArray() 從 Parcel 實例中讀取一個整數數組。
void readIntArray(int[] val) 從 Parcel 實例中讀取一個整數數組。
List readList() 從此 Parcel 實例中讀取對象列表。
long readLong() 從 Parcel 實例中讀取一個長整數值。
long[] readLongArray() 從 Parcel 實例中讀取一個長整數數組。
void readLongArray(long[] val) 從 Parcel 實例中讀取一個長整數數組。
Map readMap() 從此 Parcel 實例中讀取 Map 對象。
void readPacMapEx(PacMapEx pacMapEx) 從此 Parcel 對象中讀取 PacMapEx 對象。
ParcelableEx readParcelableEx(ClassLoader loader) 從此 Parcel 實例中讀取 ParcelableEx 對象。
 PlainArray readPlainArray(Class clzType) 從此 Parcel 實例中讀取一個 PlainArray 對象。
PlainBooleanArray readPlainBooleanArray() 從此 Parcel 實例中讀取一個 PlainBooleanArray 對象。
boolean readSequenceable(Sequenceable in) 從 Parcel 實例中讀取一個 Sequenceable 對象。
void readSequenceableArray(Sequenceable[] val) 從 Parcel 實例中讀取一個 Sequenceable 對象數組。
List readSequenceableList(Class clz) 從此 Parcel 實例中讀取指定類型的 Sequenceable 對象列表。
MapString,T readSequenceableMap(Class valueType) 從此 Parcel 實例中讀取 Map 對象。
T readSerializable(Class clz) 從此 Parcel 實例中讀取一個可序列化的對象。
short readShort() 從 Parcel 實例中讀取一個短整數值。
short[] readShortArray() 從 Parcel 實例中讀取一個短整數數組。
void readShortArray(short[] val) 從 Parcel 實例中讀取一個短整數數組。
String readString() 從 Parcel 實例中讀取字符串值。
String[] readStringArray() 從 Parcel 實例中讀取一個字符串數組。
void readStringArray(String[] val) 從 Parcel 實例中讀取一個字符串數組。
ListString readStringList() 從 Parcel 讀取字符串列表。
Object readValue() 從此 Parcel 實例中讀取一個對象。
void reclaim() 清除 Parcel 實例中的數據。
boolean rewindRead(int pos) 更改 Parcel 實例中的當前讀取位置。
boolean rewindWrite(int pos) 更改 Parcel 實例中的當前寫入位置。
boolean setCapacity(int capacity) 設置 Parcel 實例的存儲容量(以字節(jié)為單位)。
boolean setSize(int size) 設置 Parcel 實例中包含的數據大?。ㄒ宰止?jié)為單位)。
boolean writeBoolean(boolean val) 將一個布爾值寫入 Parcel 實例。
boolean writeBooleanArray(boolean[] values) 將一個布爾數組寫入 Parcel 實例。
boolean writeByte(byte val) 將字節(jié)值寫入 Parcel 實例。
boolean writeByteArray(byte[] val) 將字節(jié)數組寫入 Parcel 實例。
boolean writeBytes(byte[] val) 將字節(jié)寫入 Parcel 實例。
boolean writeChar(char val) 將單個字符值寫入 Parcel 實例。
boolean writeCharArray(char[] values) 將單個字符數組寫入 Parcel 實例。
boolean writeDouble(double val) 將雙精度浮點值寫入 Parcel 實例。
boolean writeDoubleArray(double[] values) 將雙精度浮點數組寫入 Parcel 實例。
boolean writeFloat(float val) 將浮點值寫入 Parcel 實例。
boolean writeFloatArray(float[] values) 將浮點數組寫入 Parcel 實例。
boolean writeInt(int val) 將整數值寫入 Parcel 實例。
boolean writeIntArray(int[] values) 將整數數組寫入 Parcel 實例。
void writeList(List values) 將對象列表寫入此 Parcel 實例。
boolean writeLong(long val) 將一個長整數值寫入 Parcel 實例。
boolean writeLongArray(long[] values) 將一個長整數數組寫入 Parcel 實例。
void writeMap(Map values) 將 Map 對象寫入此 Parcel 實例。
void writeMap(Map values, boolean isCross) 通過支持跨平臺將 Map 對象寫入此 Parcel 實例。
void writePacMapEx(PacMapEx val) 將 PacMapEx 對象寫入此 Parcel 實例。
void writeParcelableEx(ParcelableEx val) 將 ParcelableEx 對象寫入此 Parcel 實例。
 void writePlainArray(PlainArray value) 將 PlainArray 對象寫入此 Parcel 實例。
boolean writePlainBooleanArray(PlainBooleanArray value) 將 PlainBooleanArray 對象寫入此 Parcel 實例。
void writeSequenceable(Sequenceable val) 將 Sequenceable 對象寫入 Parcel 實例。
boolean writeSequenceableArray(Sequenceable[] values) 將 Sequenceable 對象數組寫入 Parcel 實例。
boolean writeSequenceableList(List values) 將 Sequenceable 列表寫入此 Parcel 實例。
boolean writeSequenceableMap(Map values) 將 Map 對象寫入此 Parcel 實例。
void writeSerializable(Serializable object) 將可序列化對象寫入此 Parcel 實例。
boolean writeShort(short val) 將一個短整數值寫入 Parcel 實例。
boolean writeShortArray(short[] values) 將一個短整數數組寫入 Parcel 實例。
boolean writeString(String val) 將字符串值寫入 Parcel 實例。
boolean writeStringArray(String[] values) 將字符串數組寫入 Parcel 實例。
boolean writeStringList(ListString values) 將字符串列表寫入此 Parcel 實例。
void writeTypedSequenceable(Sequenceable sequenceable) 使用 Sequenceable.Producer#createFromParcel(Parcel) 將 Sequenceable 對象寫入 Parcel 實例。
void writeTypedSequenceableArray(T[] values) 使用 Sequenceable.Producer#createFromParcel(Parcel) 將 Sequenceable 對象數組寫入 Parcel 實例。
void writeValue(Object value) 將對象寫入此 Parcel 實例。
從類 java.lang.Object 繼承的方法
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

構造函數詳細信息

Parcel

protected Parcel()

方法詳情

flushBuffer

protected void flushBuffer()

清除 Parcel 實例中的數據。

finalize

protected void finalize() throws Throwable

從類復制的描述:對象

當垃圾收集確定不再有對該對象的引用時,由對象上的垃圾收集器調用。子類覆蓋 finalize 方法以釋放系統(tǒng)資源或執(zhí)行其他清理。

finalize 的一般約定是,當 Java? 虛擬機確定不再有任何方法可以讓任何尚未終止的線程訪問該對象時調用它,除非是由于某個操作而導致的。由準備完成的其他對象或類的完成所采取。 finalize 方法可以采取任何行動,包括使該對象再次可供其他線程使用;然而,finalize 的通常目的是在對象被不可撤銷地丟棄之前執(zhí)行清理操作。例如,代表輸入/輸出連接的對象的 finalize 方法可能會執(zhí)行顯式 I/O 事務以在對象被永久丟棄之前中斷連接。

Object 類的 finalize 方法不執(zhí)行任何特殊操作;它只是正常返回。 Object 的子類可以覆蓋這個定義。

Java 編程語言不保證哪個線程將為任何給定對象調用 finalize 方法。但是,可以保證調用 finalize 的線程在調用 finalize 時不會持有任何用戶可見的同步鎖。如果 finalize 方法拋出未捕獲的異常,則忽略該異常并終止該對象的終結。

在為一個對象調用 finalize 方法后,不會采取進一步的行動,直到 Java 虛擬機再次確定沒有任何方法可以讓任何尚未終止的線程訪問該對象,包括可能的行動由其他準備完成的對象或類,此時該對象可能被丟棄。

對于任何給定的對象,Java 虛擬機永遠不會多次調用 finalize 方法。

finalize 方法拋出的任何異常都會導致該對象的終結被暫停,否則會被忽略。

覆蓋:

在類 Object 中完成

Throws:

Throw名稱 Throw描述
Throwable 此方法引發(fā)的異常

create

public static Parcel create()

創(chuàng)建一個空的 Parcel 實例。

返回:

返回一個 Parcel 實例。

create

public static Parcel create(long nativeHandler)

使用指定的處理程序創(chuàng)建一個空 Parcel 實例。

參數:

參數名稱 參數描述
nativeHandler 指示本機中的處理程序指向一個包裹對象。

返回:

返回具有指定處理程序的 Parcel 實例。

reclaim

public void reclaim()

清除 Parcel 實例中的數據。

getSize

public final int getSize()

獲取 Parcel 實例中包含的數據大?。ㄒ宰止?jié)為單位)。

返回:

返回 Parcel 實例中包含的數據的大小。

getCapacity

public final int getCapacity()

獲取 Parcel 實例的存儲容量(以字節(jié)為單位)。

返回:

返回 Parcel 實例的存儲容量。

setSize

public final boolean setSize(int size)

設置 Parcel 實例中包含的數據大小(以字節(jié)為單位)。

如果此方法中設置的數據大小大于 Parcel 的存儲容量,則返回 false。

參數:

參數名稱 參數描述
size 指示 Parcel 實例的數據大小。

返回:

設置成功返回 true; 否則返回 false。

setCapacity

public final boolean setCapacity(int capacity)

設置 Parcel 實例的存儲容量(以字節(jié)為單位)。

如果此方法中設置的容量小于 Parcel 中包含的數據大小,則返回 false。

參數:

參數名稱 參數描述
capacity Parcel實例的存儲容量。

返回:

設置成功返回true; 否則返回 false。

getWritableBytes

public final int getWritableBytes()

獲取 Parcel 實例中的可寫數據空間(以字節(jié)為單位)。

可寫數據空間 = Parcel 的存儲容量 - Parcel 中包含的數據大小。

返回:

返回 Parcel 實例的可寫數據空間。

getReadableBytes

public final int getReadableBytes()

獲取 Parcel 實例中的可讀數據空間(以字節(jié)為單位)。

可讀數據空間 = Parcel 中包含的數據大小 - 已讀取數據的大小。

返回:

返回 Parcel 實例的可讀數據空間。

getReadPosition

public final int getReadPosition()

獲取 Parcel 實例中的當前讀取位置。

返回:

返回 Parcel 實例中的當前讀取位置。

getWritePosition

public final int getWritePosition()

獲取 Parcel 實例中的當前寫入位置。

返回:

返回 Parcel 實例中的當前寫入位置。

rewindRead

public final boolean rewindRead(int pos)

更改 Parcel 實例中的當前讀取位置。

一般不建議更改當前讀取位置。 如果必須更改,請將其更改到準確的位置。 否則,讀取的數據可能不正確。

參數:

參數名稱 參數描述
pos 指示開始數據讀取的目標位置。

返回:

如果讀取位置改變,則返回 true; 否則返回 false。

rewindWrite

public final boolean rewindWrite(int pos)

更改 Parcel 實例中的當前寫入位置。

一般不建議更改當前寫入位置。 如果必須更改,請將其更改到準確的位置。 否則,要讀取的數據可能不正確。

參數:

參數名稱 參數描述
pos 指示開始數據寫入的目標位置。

返回:

如果寫入位置改變,則返回 true; 否則返回 false。

writeByte

public final boolean writeByte(byte val)

將字節(jié)值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的字節(jié)值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeShort

public final boolean writeShort(short val)

將一個短整數值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的短整數值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeInt

public final boolean writeInt(int val)

將整數值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的整數值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeLong

public final boolean writeLong(long val)

將一個長整數值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的長整數值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeFloat

public final boolean writeFloat(float val)

將浮點值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的浮點值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeDouble

public final boolean writeDouble(double val)

將雙精度浮點值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的雙精度浮點值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeBoolean

public final boolean writeBoolean(boolean val)

將一個布爾值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的布爾值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeChar

public final boolean writeChar(char val)

將單個字符值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的單個字符值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeString

public final boolean writeString(String val)

將字符串值寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的字符串值。

返回:

如果值已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeSequenceable

public final void writeSequenceable(Sequenceable val)

將 Sequenceable 對象寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的 Sequenceable 對象。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

readByte

public final byte readByte()

從 Parcel 實例中讀取一個字節(jié)值。

返回:

返回一個字節(jié)值。

readShort

public final short readShort()

從 Parcel 實例中讀取一個短整數值。

返回:

返回一個短整數值。

readInt

public final int readInt()

從 Parcel 實例中讀取一個整數值。

返回:

返回一個整數值。

readLong

public final long readLong()

從 Parcel 實例中讀取一個長整數值。

返回:

返回一個長整數值。

readFloat

public final float readFloat()

從 Parcel 實例中讀取一個浮點值。

返回:

返回一個浮點值。

readDouble

public final double readDouble()

從 Parcel 實例中讀取一個雙精度浮點值。

返回:

返回一個雙精度浮點值。

readBoolean

public final boolean readBoolean()

從 Parcel 實例中讀取一個布爾值。

返回:

返回一個布爾值。

readChar

public final char readChar()

從 Parcel 實例中讀取單個字符值。

返回:

返回單個字符值。

readString

public final String readString()

從 Parcel 實例中讀取字符串值。

返回:

返回一個字符串值。

readSequenceable

public final boolean readSequenceable(Sequenceable in)

從 Parcel 實例中讀取一個 Sequenceable 對象。

參數:

參數名稱 參數描述
in 指示需要使用 Parcel 執(zhí)行解組操作的 Sequenceable 對象。

返回:

如果解組成功,則返回 true; 否則返回 false。

writeByteArray

public final boolean writeByteArray(byte[] val)

將字節(jié)數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
val 指示要寫入的字節(jié)數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeBytes

public final boolean writeBytes(byte[] val)

將字節(jié)寫入 Parcel 實例。

此方法與 writeByteArray 方法不同。 在該方法中,Parcel 不能調用其他方法寫入數據,寫入的數據只能通過調用 getBytes() 來讀取。

參數:

參數名稱 參數描述
val 指示要寫入的字節(jié)。

返回:

如果字節(jié)已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeShortArray

public final boolean writeShortArray(short[] values)

將一個短整數數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的短整數數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeIntArray

public final boolean writeIntArray(int[] values)

將整數數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的整數數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeLongArray

public final boolean writeLongArray(long[] values)

將一個長整數數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的長整數數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeFloatArray

public final boolean writeFloatArray(float[] values)

將浮點數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的浮點數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeDoubleArray

public final boolean writeDoubleArray(double[] values)

將雙精度浮點數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的雙精度浮點數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeBooleanArray

public final boolean writeBooleanArray(boolean[] values)

將一個布爾數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的布爾數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeCharArray

public final boolean writeCharArray(char[] values)

將單個字符數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的單個字符數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeStringArray

public final boolean writeStringArray(String[] values)

將字符串數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的字符串數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeStringList

public final boolean writeStringList(ListString values)

將字符串列表寫入此 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的字符串列表。

返回:

如果字符串列表寫入成功,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeSequenceableArray

public final boolean writeSequenceableArray(Sequenceable[] values)

將 Sequenceable 對象數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的 Sequenceable 對象數組。

返回:

如果數組已寫入 Parcel,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeSequenceableList

public final boolean writeSequenceableList(List values)

將 Sequenceable 列表寫入此 Parcel 實例。

此列表中的元素類型必須是實現了 Sequenceable 的東西。 調用readSequenceableList(java.lang.Class)方法讀取列表時,確保values的元素是同一類型。

參數:

參數名稱 參數描述
values 指示要寫入的 Sequenceable 列表。

返回:

如果 Sequenceable 列表寫入成功,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

writeSequenceableMap

public final boolean writeSequenceableMap(Map values)

將 Map 對象寫入此 Parcel 實例。

在 Map 對象中,鍵是 String 類型,值來自實現了 Sequenceable 的東西。 調用readSequenceableMap(java.lang.Class)方法讀取map時,需要保證values的元素類型相同。

參數:

參數名稱 參數描述
values 指示要寫入的 Map 對象。

返回:

如果 Map 對象寫入成功,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
ParcelException 當這個包裹的容量不足時,異常消息:ParcelException#NO_CAPACITY_ERROR。

readByteArray

public final void readByteArray(byte[] val)

從 Parcel 實例中讀取一個字節(jié)數組。

參數:

參數名稱 參數描述
val 指示要讀取的字節(jié)數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取字節(jié)數組失敗會拋出這個異常。

readByteArray

public final byte[] readByteArray()

從 Parcel 實例中讀取一個字節(jié)數組。

返回:

返回一個字節(jié)數組。

getBytes

public final byte[] getBytes()

從 Parcel 實例中讀取所有字節(jié)。

此方法與 readByteArray 方法不同。 在該方法中,Parcel 不能調用其他方法讀取數據,該方法只能讀取使用 [writeBytes(byte]) 寫入的數據。

返回:

返回字節(jié)。

readShortArray

public final void readShortArray(short[] val)

從 Parcel 實例中讀取一個短整數數組。

參數:

參數名稱 參數描述
val 指示要讀取的短整數數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取短數組失敗,則拋出此異常。

readShortArray

public final short[] readShortArray()

從 Parcel 實例中讀取一個短整數數組。

返回:

返回一個短整數數組。

readIntArray

public final void readIntArray(int[] val)

從 Parcel 實例中讀取一個整數數組。

參數:

參數名稱 參數描述
val 指示要讀取的整數數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取整數數組失敗,則拋出此異常。

readIntArray

public final int[] readIntArray()

從 Parcel 實例中讀取一個整數數組。

返回:

返回一個整數數組。

readLongArray

public final void readLongArray(long[] val)

從 Parcel 實例中讀取一個長整數數組。

參數:

參數名稱 參數描述
val 指示要讀取的長整數數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取長數組失敗,則拋出此異常。

readLongArray

public final long[] readLongArray()

從 Parcel 實例中讀取一個長整數數組。

返回:

返回一個長整數數組。

readFloatArray

public final void readFloatArray(float[] val)

從 Parcel 實例中讀取一個浮點數組。

參數:

參數名稱 參數描述
val 指示要讀取的浮點數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取浮點數組失敗,則拋出此異常。

readFloatArray

public final float[] readFloatArray()

從 Parcel 實例中讀取一個浮點數組。

返回:

返回一個浮點數組。

readDoubleArray

public final void readDoubleArray(double[] val)

從 Parcel 實例中讀取一個雙精度浮點數組。

參數:

參數名稱 參數描述
val 指示要讀取的雙精度浮點數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取雙精度數組失敗,則拋出此異常。

readDoubleArray

public final double[] readDoubleArray()

從 Parcel 實例中讀取一個雙精度浮點數組。

返回:

返回一個雙精度浮點數組。

readBooleanArray

public final void readBooleanArray(boolean[] val)

從 Parcel 實例中讀取一個布爾數組。

參數:

參數名稱 參數描述
val 指示要讀取的布爾數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取布爾數組失敗,則拋出此異常。

readBooleanArray

public final boolean[] readBooleanArray()

從 Parcel 實例中讀取一個布爾數組。

返回:

返回一個布爾數組。

readCharArray

public final void readCharArray(char[] val)

從 Parcel 實例中讀取單個字符數組。

參數:

參數名稱 參數描述
val 指示要讀取的單個字符數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取 char 數組失敗,則拋出此異常。

readCharArray

public final char[] readCharArray()

從 Parcel 實例中讀取單個字符數組。

返回:

返回單個字符數組。

readStringArray

public final void readStringArray(String[] val)

從 Parcel 實例中讀取一個字符串數組。

參數:

參數名稱 參數描述
val 指示要讀取的字符串數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取字符串數組失敗,則拋出此異常。

readStringArray

public final String[] readStringArray()

從 Parcel 實例中讀取一個字符串數組。

返回:

返回一個字符串數組。

readStringList

public final ListString readStringList()

從 Parcel 讀取字符串列表。

您可以使用此方法讀取 writeStringList(java.util.List) 和 [writeStringArray(java.lang.String]) 寫入 Parcel 的字符串。

返回:

返回一個只讀字符串列表對象。

readSequenceableArray

public final void readSequenceableArray(Sequenceable[] val)

從 Parcel 實例中讀取一個 Sequenceable 對象數組。

參數:

參數名稱 參數描述
val 指示要讀取的 Sequenceable 對象數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果讀取可排序數組失敗,則拋出此異常。

readSequenceableList

public final List readSequenceableList(Class clz)

從此 Parcel 實例中讀取指定類型的 Sequenceable 對象列表。

提供 Sequenceable 對象的類必須具有 Sequenceable.Producer 類型的靜態(tài)成員變量 CREATOR。

參數:

參數名稱 參數描述
clz 指示要讀取的 Sequenceable 對象的類型。

返回:

返回 Sequenceable 對象的列表。

Throws:

Throw名稱 Throw描述
ParcelException 如果無法獲取 Sequenceable 的 CREATOR,則拋出此異常。

readSequenceableMap

public final MapString,T readSequenceableMap(Class valueType)

從此 Parcel 實例中讀取 Map 對象。 在 Map 對象中,鍵是 String 類型,值來自實現了 Sequenceable 的東西。

參數:

參數名稱 參數描述
valueType 指示要讀取的 Map 對象的值類型。

返回:

返回一個 Map 對象,其鍵是 String 類型,值來自實現 Sequenceable 的東西。

writeTypedSequenceable

public final void writeTypedSequenceable(Sequenceable sequenceable)

使用 Sequenceable.Producer#createFromParcel(Parcel) 將 Sequenceable 對象寫入 Parcel 實例。

此方法還將 Sequenceable 對象的類名寫入 Parcel。 類名將用于從 Parcel 中恢復 Sequenceable 對象。

參數:

參數名稱 參數描述
sequenceable 指示已實現 Sequenceable.Producer#createFromParcel 的 Sequenceable 對象。

Throws:

Throw名稱 Throw描述
ParcelException 如果在數據寫入過程中發(fā)生異常,則拋出此異常。

createSequenceable

public final T createSequenceable()

使用 Sequenceable.Producer#createFromParcel(Parcel) 從 Parcel 創(chuàng)建特定的 Sequenceable 對象。

該方法根據writeTypedSequenceable(ohos.utils.Sequenceable)寫入的類名恢復Sequenceable對象。

返回:

返回新創(chuàng)建的 Sequenceable 對象; 如果無法恢復 Sequenceable 對象,則返回 null。

Throws:

Throw名稱 Throw描述
ParcelException 如果在數據讀取過程中發(fā)生異常,則拋出此異常。

createSequenceable

public final T createSequenceable(ClassLoader classLoader)

使用 Sequenceable.Producer#createFromParcel(Parcel) 從 Parcel 創(chuàng)建特定的 Sequenceable 對象。

該方法根據writeTypedSequenceable(ohos.utils.Sequenceable)寫入的類名恢復Sequenceable對象。

類型參數:

類型參數名稱 類型參數描述
T 表示擴展 Sequenceable 的類。

參數:

參數名稱 參數描述
classLoader 表示用于加載 Sequenceable 類的類加載器。

返回:

返回新創(chuàng)建的 Sequenceable 對象; 如果無法恢復 Sequenceable 對象,則返回 null。

writeTypedSequenceableArray

public final void writeTypedSequenceableArray(T[] values)

使用 Sequenceable.Producer#createFromParcel(Parcel) 將 Sequenceable 對象數組寫入 Parcel 實例。

參數:

參數名稱 參數描述
values 指示要寫入的 Sequenceable 對象數組。

Throws:

Throw名稱 Throw描述
ParcelException 如果在數據寫入過程中發(fā)生異常,則拋出此異常。

writeSerializable

public final void writeSerializable(Serializable object)

將可序列化對象寫入此 Parcel 實例。

參數:

參數名稱 參數描述
object 指示要寫入的可序列化對象。

Throws:

Throw名稱 Throw描述
ParcelException 如果對象無法序列化或發(fā)生 I/O 錯誤,則引發(fā)此異常。

readSerializable

public final T readSerializable(Class clz)

從此 Parcel 實例中讀取一個可序列化的對象。

參數:

參數名稱 參數描述
clz 指示要讀取的可序列化對象的類型。

返回:

返回已讀取的可序列化對象; 如果無法讀取可序列化對象,則返回 null。

Throws:

Throw名稱 Throw描述
ParcelException 如果要讀取的可序列化對象的類型與 clz 不匹配或發(fā)生 I/O 錯誤,則拋出此異常。

createSequenceableArray

public final Sequenceable[] createSequenceableArray()

使用 Sequenceable.Producer#createFromParcel(Parcel) 從 Parcel 創(chuàng)建一個特定的 Sequenceable 對象數組

返回:

返回新創(chuàng)建的 Sequenceable 對象數組; 如果無法恢復 Sequenceable 對象數組,則返回 null。

Throws:

Throw名稱 Throw描述
ParcelException 如果在數據讀取過程中發(fā)生異常,則拋出此異常。

readList

public List readList()

從此 Parcel 實例中讀取對象列表。

返回:

返回對象列表。

Throws:

Throw名稱 Throw描述
ParcelException 如果列表包含 Parcel 不支持的對象類型,則引發(fā)此異常。

writeL
分享題目:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OSParcel
新聞來源:http://uogjgqi.cn/article/djgeodd.html

掃二維碼與項目經理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網交流