鸿蒙OS开发文档 第48页

鸿蒙OS BitSet

BitSet java.lang.Object |—java.util.BitSet public class BitSet extends Object implements Cloneable, Serializable 这个类实现了一个根据需要增长的位向量。 位集的每个组件都有一个布尔值。 BitSet 的位由非负整数索引。 可以检查、设置或清除各个索引位。 一个 BitSet 可用于通过逻辑 AND、逻辑异或和逻辑异或操作来修改另一个 BitSet 的内容。 默认情况下,集合中的所有位最初都具有值 false。 每个位集都有一个当前大小,即该位集当前使用的空间位数。 请注意,大小与位集的实现有关,因此它可能会随着实现而改变。 位集的长度与位集的逻辑长度相关,并且独立于实现来定义。 除非另有说明,否则将 null 参数传递给 BitSet 中的任何方法都将导致 NullPointerException。 如果没有外部同步,BitSet 对于多线程使用是不安全的。 构造函数摘要 构造函数 描述 BitSet() 创建一个新的位集。 BitSet(int nbits) 创建一个位集,其初始大小足够大,可以显式表示索引范围为 0 到 nbits-1 的位。 方法总结 修饰符和类型 方法 描述 void and(BitSet set) 执行此目标位集与参数位集的逻辑与。 void andNot(BitSet set) 清除此 BitSet 中在指定 BitSet 中设置了相应位的所有位。 int cardinality() 返回此 BitSet 中设置为 true 的位数。 void clear() 将此 BitSet 中的所有位设置为 false。 void clear(int bitIndex) 将索引指定的位设置为 false。 void clear(int fromIndex, int toIndex) 将从指定的 fromIndex(包括)到指定的 toIndex(不包括)的位设置为 false。 Object clone() 克隆此 BitSet 会生成一个与其相同的新 BitSet。 boolean equals(Object obj) 将此对象与指定对象进行比较。 void flip(int bitIndex) 将指定索引处的位设置为其当前值的补码。 void flip(int fromIndex, int toIndex) 将从指定的 fromIndex(包括)到指定的 toIndex(不包括)的每个位设置为其当前值的补码。 boolean get(int bitIndex) 返回具有指定索引的位的值。 BitSet get(int fromIndex, int toIndex) 返回一个新的 BitSet,该 BitSet 由该 BitSet 中从 fromIndex(包括)到 toIndex(不包括)的位组成。 int hashCode() 返回此位集的哈希码值。 boolean intersects(BitSet set) 如果指定的 BitSet 有任何位设置为 true,并且在此 BitSet 中也设置为 true,则返回 true。 boolean isEmpty() 如果此 BitSet 不包含设置为 true 的位,则返回 true。 int length() 返回此 BitSet 的“逻辑大小”:BitSet 中最高设置位的索引加一。 int nextClearBit(int fromIndex) 返回在指定起始索引上或之后发生的设置为 false 的第一位的索引。 int nextSetBit(int fromIndex) 返回在指定起始索引上或之后出现的第一个设置为 true 的索引。 void or(BitSet set) 使用位集参数执行此位集的逻辑或。 int previousClearBit(int fromIndex) 返回设置为 false 的最近位的索引,该位出现在指定的起始索引上或之前。 int previousSetBit(int fromIndex) 返回设置为 true 的最近位的索引,该位出现在指定的起始索引上或之前。 void set(int bitIndex) 将指定索引处的位设置为真。 void set(int bitIndex, boolean value) 将指定索引处的位设置为指定值。 void set(int fromIndex, int toIndex) 将指定 fromIndex(包括)到指定 toIndex(不包括)的位设置为 true。 void set(int fromIndex, int toIndex, boolean value)...

鸿蒙OS Base64.Encoder

Base64.Encoder java.lang.Object |—java.util.Base64.Encoder public static class Base64.Encoder extends Object 此类实现了一个编码器,用于使用 RFC 4648 和 RFC 2045 中指定的 Base64 编码方案对字节数据进行编码。 Encoder 类的实例可供多个并发线程安全使用。 除非另有说明,否则将 null 参数传递给此类的方法将导致抛出 NullPointerException。 方法总结 修饰符和类型 方法 描述 byte[] encode(byte[] src) 使用 Base64 编码方案将指定字节数组中的所有字节编码为新分配的字节数组。 int encode(byte[] src, byte[] dst) 使用 Base64 编码方案对指定字节数组中的所有字节进行编码,将结果字节写入给定的输出字节数组,从偏移量 0 开始。 ByteBuffer encode(ByteBuffer buffer) 使用 Base64 编码方案将指定字节缓冲区中的所有剩余字节编码到新分配的 ByteBuffer 中。 String encodeToString(byte[] src) 使用 Base64 编码方案将指定的字节数组编码为字符串。 Base64.Encoder withoutPadding() 返回与此等效编码的编码器实例,但在编码字节数据的末尾不添加任何填充字符。 OutputStream wrap(OutputStream os) 使用 Base64 编码方案包装用于编码字节数据的输出流。 从类 java.lang.Object 继承的方法 clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 方法详情 encode public byte[] encode(byte[] src) 使用 Base64 编码方案将指定字节数组中的所有字节编码为新分配的字节数组。 返回的字节数组是结果字节的长度。 参数: 参数名称 参数描述 src 要编码的字节数组 返回: 一个新分配的字节数组,包含生成的编码字节。 encode public int encode(byte[] src, byte[] dst) 使用 Base64 编码方案对指定字节数组中的所有字节进行编码,将结果字节写入给定的输出字节数组,从偏移量 0 开始。 此方法的调用者有责任确保输出字节数组 dst 有足够的空间来编码输入字节数组中的所有字节。 如果输出字节数组不够大,则不会将任何字节写入输出字节数组。 参数: 参数名称 参数描述 src 要编码的字节数组 dst 输出字节数组 返回: 写入输出字节数组的字节数 Throws: Throw名称 Throw描述 IllegalArgumentException 如果 dst 没有足够的空间来编码所有输入字节。 encodeToString public String encodeToString(byte[] src) 使用 Base64 编码方案将指定的字节数组编码为字符串。 此方法首先将所有输入字节编码为 base64 编码的字节数组,然后使用编码的字节数组和 ISO-8859-1 字符集构造一个新的字符串。 换句话说,调用此方法与调用 new String(encode(src), StandardCharsets.ISO_8859_1) 具有完全相同的效果。 参数: 参数名称 参数描述 src 要编码的字节数组...

鸿蒙OS Base64.Decoder

Base64.Decoder java.lang.Object |—java.util.Base64.Decoder public static class Base64.Decoder extends Object 此类实现了一个解码器,用于使用 RFC 4648 和 RFC 2045 中指定的 Base64 编码方案来解码字节数据。 Base64 填充字符 ‘=’ 被接受并解释为编码字节数据的结尾,但不是必需的。 因此,如果编码字节数据的最终单元只有两个或三个 Base64 字符(没有填充相应的填充字符),则它们将被解码,就像后面跟着填充字符一样。 如果最终单元中存在填充字符,则必须存在正确数量的填充字符,否则在解码期间抛出 IllegalArgumentException(从 Base64 流中读取时的 IOException)。 Decoder 类的实例可供多个并发线程安全使用。 除非另有说明,否则将 null 参数传递给此类的方法将导致抛出 NullPointerException。 方法总结 修饰符和类型 方法 描述 byte[] decode(byte[] src) 使用 Base64 编码方案解码输入字节数组中的所有字节,将结果写入新分配的输出字节数组。 int decode(byte[] src, byte[] dst) 使用 Base64 编码方案解码输入字节数组中的所有字节,将结果写入给定的输出字节数组,从偏移量 0 开始。 byte[] decode(String src) 使用 Base64 编码方案将 Base64 编码的字符串解码为新分配的字节数组。 ByteBuffer decode(ByteBuffer buffer) 使用 Base64 编码方案对输入字节缓冲区中的所有字节进行解码,并将结果写入新分配的 ByteBuffer。 InputStream wrap(InputStream is) 返回用于解码 Base64 编码字节流的输入流。 从类 java.lang.Object 继承的方法 clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 方法详情 decode public byte[] decode(byte[] src) 使用 Base64 编码方案解码输入字节数组中的所有字节,将结果写入新分配的输出字节数组。 返回的字节数组是结果字节的长度。 参数: 参数名称 参数描述 src 要解码的字节数组 返回: 一个新分配的包含解码字节的字节数组。 Throws: Throw名称 Throw描述 IllegalArgumentException 如果 src 不在有效的 Base64 方案中 decode public byte[] decode(String src) 使用 Base64 编码方案将 Base64 编码的字符串解码为新分配的字节数组。 调用此方法与调用 decode(src.getBytes(StandardCharsets.ISO_8859_1)) 的效果完全相同 参数: 参数名称 参数描述 src 要解码的字符串 返回: 一个新分配的包含解码字节的字节数组。 Throws: Throw名称 Throw描述 IllegalArgumentException 如果 src 不在有效的 Base64 方案中 decode public int decode(byte[] src, byte[] dst) 使用 Base64 编码方案解码输入字节数组中的所有字节,将结果写入给定的输出字节数组,从偏移量 0 开始。 此方法的调用者有责任确保输出字节数组 dst...

鸿蒙OS Base64

Base64 java.lang.Object |—java.util.Base64 public class Base64 extends Object 此类仅包含用于获取 Base64 编码方案的编码器和解码器的静态方法。 此类的实现支持 RFC 4648 和 RFC 2045 中指定的以下 Base64 类型。 Basic 使用 RFC 4648 和 RFC 2045 的表 1 中指定的“Base64 字母”进行编码和解码操作。 编码器不添加任何换行符(行分隔符)。 解码器拒绝包含 base64 字母表之外的字符的数据。 URL and Filename safe 使用 RFC 4648 的表 2 中指定的“URL 和文件名安全 Base64 字母”进行编码和解码。 编码器不添加任何换行符(行分隔符)。 解码器拒绝包含 base64 字母表之外的字符的数据。 MIME 使用 RFC 2045 的表 1 中指定的“Base64 字母”进行编码和解码操作。 编码后的输出必须以每行不超过 76 个字符的形式表示,并使用回车“\r”紧跟换行“\n”作为行分隔符。 没有行分隔符添加到编码输出的末尾。 在解码操作中忽略所有在 base64 字母表中找不到的行分隔符或其他字符。 除非另有说明,否则将 null 参数传递给此类的方法将导致抛出 NullPointerException。 嵌套类摘要 修饰符和类型 类 描述 static class Base64.Decoder 此类实现了一个解码器,用于使用 RFC 4648 和 RFC 2045 中指定的 Base64 编码方案来解码字节数据。 static class Base64.Encoder 此类实现了一个编码器,用于使用 RFC 4648 和 RFC 2045 中指定的 Base64 编码方案对字节数据进行编码。 方法总结 修饰符和类型 方法 描述 static Base64.Decoder getDecoder() 返回使用基本类型 base64 编码方案解码的解码器。 static Base64.Encoder getEncoder() 返回使用 Basic 类型 base64 编码方案进行编码的 Encoder。 static Base64.Decoder getMimeDecoder() 返回使用 MIME 类型 base64 解码方案解码的解码器。 static Base64.Encoder getMimeEncoder() 返回使用 MIME 类型 base64 编码方案进行编码的 Encoder。 static Base64.Encoder getMimeEncoder(int lineLength, byte[] lineSeparator) 返回一个使用 MIME 类型 base64 编码方案进行编码的编码器,该编码方案具有指定的行长和行分隔符。 static Base64.Decoder getUrlDecoder() 返回使用 URL 和文件名安全类型 base64 编码方案解码的解码器。 static Base64.Encoder getUrlEncoder() 返回使用 URL 和 Filename 安全类型 base64 编码方案进行编码的 Encoder。 从类 java.lang.Object 继承的方法 clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 方法详情 getEncoder public static Base64.Encoder getEncoder() 返回使用 Basic 类型 base64...

鸿蒙OS Arrays

Arrays java.lang.Object |—java.util.Arrays public class Arrays extends Object 此类包含用于操作数组(例如排序和搜索)的各种方法。 此类还包含一个允许将数组视为列表的静态工厂。 如果指定的数组引用为空,则此类中的方法都会抛出 NullPointerException,除非另有说明。 此类中包含的方法的文档包括实现的简要说明。 此类描述应被视为实现说明,而不是规范的一部分。 只要遵守规范本身,实现者应该可以随意替换其他算法。 (例如,sort(Object[]) 使用的算法不必是 MergeSort,但它必须是稳定的。) 此类是 Java 集合框架的成员。 方法总结 修饰符和类型 方法 描述 static <T> List<T> asList(T… a) 返回由指定数组支持的固定大小的列表。 static int binarySearch(byte[] a, byte key) 使用二进制搜索算法在指定的字节数组中搜索指定的值。 static int binarySearch(byte[] a, int fromIndex, int toIndex, byte key) 使用二进制搜索算法在指定字节数组的范围内搜索指定值。 static int binarySearch(char[] a, char key) 使用二进制搜索算法在指定的字符数组中搜索指定的值。 static int binarySearch(char[] a, int fromIndex, int toIndex, char key) 使用二进制搜索算法在指定字符数组的范围内搜索指定值。 static int binarySearch(double[] a, double key) 使用二进制搜索算法在指定的双精度数组中搜索指定的值。 static int binarySearch(double[] a, int fromIndex, int toIndex, double key) 使用二分搜索算法在指定的双精度数组范围内搜索指定值。 static int binarySearch(float[] a, float key) 使用二进制搜索算法在指定的浮点数数组中搜索指定的值。 static int binarySearch(float[] a, int fromIndex, int toIndex, float key) 使用二分搜索算法在指定浮点数数组的范围内搜索指定值。 static int binarySearch(int[] a, int key) 使用二进制搜索算法在指定的整数数组中搜索指定的值。 static int binarySearch(int[] a, int fromIndex, int toIndex, int key) 使用二进制搜索算法在指定整数数组的范围内搜索指定值。 static int binarySearch(long[] a, int fromIndex, int toIndex, long key) 使用二进制搜索算法在指定的 long 数组的范围内搜索指定值。 static int binarySearch(long[] a, long key) 使用二进制搜索算法在指定的 long 数组中搜索指定的值。 static int binarySearch(short[] a, int fromIndex, int toIndex, short key) 使用二分搜索算法在指定的 short 数组的范围内搜索指定的值。 static int binarySearch(short[] a, short key) 使用二分搜索算法在指定的 short 数组中搜索指定的值。 static int binarySearch(Object[] a, int fromIndex, int toIndex, Object key) 使用二分搜索算法在指定数组的范围内搜索指定对象。 static int binarySearch(Object[] a, Object key) 使用二分搜索算法在指定数组中搜索指定对象。 static <T> int binarySearch(T[] a, int fromIndex, int toIndex, T key, Comparator<? super T> c) 使用二分搜索算法在指定数组的范围内搜索指定对象。 static <T> int binarySearch(T[] a, T key, Comparator<? super T> c) 使用二分搜索算法在指定数组中搜索指定对象。 static boolean[] copyOf(boolean[] original, int newLength) 复制指定的数组,用 false 截断或填充(如果需要),使副本具有指定的长度。 static byte[] copyOf(byte[] original, int newLength) 复制指定的数组,用零截断或填充(如有必要),以便副本具有指定的长度。 static char[] copyOf(char[] original, int newLength) 复制指定的数组,用空字符截断或填充(如有必要),使副本具有指定的长度。 static double[] copyOf(double[] original, int newLength) 复制指定的数组,用零截断或填充(如有必要),以便副本具有指定的长度。 static float[] copyOf(float[] original, int newLength) 复制指定的数组,用零截断或填充(如有必要),以便副本具有指定的长度。 static int[] copyOf(int[] original, int newLength) 复制指定的数组,用零截断或填充(如有必要),以便副本具有指定的长度。 static long[] copyOf(long[] original, int newLength) 复制指定的数组,用零截断或填充(如有必要),以便副本具有指定的长度。 static short[] copyOf(short[] original, int newLength) 复制指定的数组,用零截断或填充(如有必要),以便副本具有指定的长度。 static <T> T[] copyOf(T[] original, int newLength) 复制指定的数组,截断或填充空值(如有必要),使副本具有指定的长度。 static <T,U> T[] copyOf(U[] original, int newLength, Class<? extends T[]> newType) 复制指定的数组,截断或填充空值(如有必要),使副本具有指定的长度。 static boolean[] copyOfRange(boolean[] original, int from, int to) 将指定数组的指定范围复制到新数组中。 static byte[] copyOfRange(byte[] original, int from, int to) 将指定数组的指定范围复制到新数组中。 static char[] copyOfRange(char[] original, int from, int to)...

鸿蒙OS ArrayList

ArrayList java.lang.Object |—java.util.AbstractCollection<E& |—|—java.util.AbstractList<E& |—|—|—java.util.ArrayList<E& public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, Serializable List 接口的可调整大小的数组实现。 实现所有可选列表操作,并允许所有元素,包括 null。 除了实现 List 接口之外,该类还提供了一些方法来操作内部用于存储列表的数组的大小。 (这个类大致相当于 Vector,只是它是不同步的。) size、isEmpty、get、set、iterator 和 listIterator 操作在恒定时间内运行。 添加操作在摊销常数时间内运行,即添加 n 个元素需要 O(n) 时间。 所有其他操作都以线性时间运行(粗略地说)。 与 LinkedList 实现相比,常数因子较低。 每个 ArrayList 实例都有一个容量。 容量是用于存储列表中元素的数组的大小。 它总是至少与列表大小一样大。 随着元素被添加到 ArrayList,它的容量会自动增长。 除了添加一个元素具有恒定的摊销时间成本这一事实之外,没有指定增长策略的细节。 应用程序可以在使用 ensureCapacity 操作添加大量元素之前增加 ArrayList 实例的容量。 这可以减少增量重新分配的数量。 请注意,此实现不同步。 如果多个线程同时访问一个 ArrayList 实例,并且至少有一个线程在结构上修改了列表,则必须在外部进行同步。 (结构修改是添加或删除一个或多个元素,或显式调整后备数组大小的任何操作;仅设置元素的值不是结构修改。)这通常通过同步一些自然封装的对象来完成 列表。 如果不存在这样的对象,则应使用 Collections#synchronizedList 方法“包装”该列表。 这最好在创建时完成,以防止对列表的意外不同步访问: List list = Collections.synchronizedList(new ArrayList(...)); 此类的 iterator 和 listIterator 方法返回的迭代器是快速失败的:如果在创建迭代器后的任何时间对列表进行结构修改,除了通过迭代器自己的 ListIterator#remove() 或 ListIterator#add(Object) 之外的任何方式方法,迭代器将抛出 ConcurrentModificationException。因此,面对并发修改,迭代器快速而干净地失败,而不是在未来不确定的时间冒任意的、非确定性的行为。 请注意,不能保证迭代器的快速失败行为,因为一般来说,在存在不同步的并发修改的情况下,不可能做出任何硬保证。快速失败的迭代器会尽最大努力抛出 ConcurrentModificationException。因此,编写一个依赖于这个异常的正确性的程序是错误的:迭代器的快速失败行为应该只用于检测错误。 此类是 Java 集合框架的成员。 字段摘要 从类 java.util.AbstractList 继承的字段 modCount 构造函数摘要 构造函数 描述 ArrayList() 构造一个初始容量为 10 的空列表。 ArrayList(int initialCapacity) 构造一个具有指定初始容量的空列表。 ArrayList(Collection<? extends E> c) 按照集合的迭代器返回的顺序构造一个包含指定集合元素的列表。 方法总结 修饰符和类型 方法 描述 void add(int index, E element) 在此列表中的指定位置插入指定元素。 boolean add(E e) 将指定元素附加到此列表的末尾。 boolean addAll(int index, Collection<? extends E> c) 将指定集合中的所有元素插入此列表,从指定位置开始。 boolean addAll(Collection<? extends E> c) 按照指定集合的迭代器返回的顺序,将指定集合中的所有元素附加到此列表的末尾。 void clear() 从此列表中删除所有元素。 Object clone() 返回此 ArrayList 实例的浅表副本。 boolean contains(Object o) 如果此列表包含指定元素,则返回 true。...

鸿蒙OS ArrayDeque

ArrayDeque java.lang.Object |—java.util.AbstractCollection<E& |—|—java.util.ArrayDeque<E& public class ArrayDeque<E> extends AbstractCollection<E> implements Deque<E>, Cloneable, Serializable Deque 接口的可调整大小的数组实现。 数组双端队列没有容量限制; 它们会根据需要增长以支持使用。 它们不是线程安全的; 在没有外部同步的情况下,它们不支持多线程并发访问。 禁止使用空元素。 这个类在作为栈使用时可能比 Stack 快,作为队列使用时比 LinkedList 快。 大多数 ArrayDeque 操作在摊销的常数时间内运行。 例外情况包括 remove、removeFirstOccurrence、removeLastOccurrence、contains、iterator.remove() 和批量操作,所有这些操作都以线性时间运行。 此类的迭代器方法返回的迭代器是快速失败的:如果在创建迭代器后的任何时间对双端队列进行了修改,除了通过迭代器自己的 remove 方法之外的任何方式,迭代器通常会抛出 ConcurrentModificationException。 因此,面对并发修改,迭代器快速而干净地失败,而不是在未来不确定的时间冒任意的、非确定性的行为。 请注意,不能保证迭代器的快速失败行为,因为一般来说,在存在不同步的并发修改的情况下,不可能做出任何硬保证。 快速失败的迭代器会尽最大努力抛出 ConcurrentModificationException。 因此,编写一个依赖于这个异常的正确性的程序是错误的:迭代器的快速失败行为应该只用于检测错误。 此类及其迭代器实现了 Collection 和 Iterator 接口的所有可选方法。 此类是 Java 集合框架的成员。 构造函数摘要 构造函数 描述 ArrayDeque() 构造一个空数组双端队列,其初始容量足以容纳 16 个元素。 ArrayDeque(int numElements) 构造一个空数组双端队列,其初始容量足以容纳指定数量的元素。 ArrayDeque(Collection<? extends E> c) 按照集合的迭代器返回的顺序构造一个包含指定集合元素的双端队列。 方法总结 修饰符和类型 方法 描述 boolean add(E e) 在此双端队列的末尾插入指定的元素。 void addFirst(E e) 在此双端队列的前面插入指定元素。 void addLast(E e) 在此双端队列的末尾插入指定的元素。 void clear() 从此双端队列中删除所有元素。 ArrayDequeE clone() 返回此双端队列的副本。 boolean contains(Object o) 如果此双端队列包含指定元素,则返回 true。 IteratorE descendingIterator() 以相反的顺序返回此双端队列中元素的迭代器。 E element() 检索但不删除此双端队列表示的队列的头部。 E getFirst() 检索但不删除此双端队列的第一个元素。 E getLast() 检索但不删除此双端队列的最后一个元素。 boolean isEmpty() 如果此双端队列不包含任何元素,则返回 true。 IteratorE iterator() 返回此双端队列中元素的迭代器。 boolean offer(E e) 在此双端队列的末尾插入指定的元素。 boolean offerFirst(E e) 在此双端队列的前面插入指定元素。 boolean offerLast(E e) 在此双端队列的末尾插入指定的元素。 E peek() 检索但不删除此双端队列表示的队列的头部,如果此双端队列为空,则返回 null。 E peekFirst() 检索但不删除此双端队列的第一个元素,如果此双端队列为空,则返回 null。 E peekLast() 检索但不删除此双端队列的最后一个元素,如果此双端队列为空,则返回 null。 E poll() 检索并删除此双端队列表示的队列的头部(换句话说,此双端队列的第一个元素),如果此双端队列为空,则返回 null。 E pollFirst()...

鸿蒙OS AbstractSet

AbstractSet java.lang.Object |—java.util.AbstractCollection<E& |—|—java.util.AbstractSet<E& public abstract class AbstractSet<E> extends AbstractCollection<E> implements Set<E> 此类提供 Set 接口的骨架实现,以最大限度地减少实现此接口所需的工作量。 通过扩展此类实现集合的过程与通过扩展 AbstractCollection 实现集合的过程相同,只是该类的子类中的所有方法和构造函数都必须遵守 Set 接口施加的附加约束(例如, add 方法不得允许将对象的多个实例添加到集合中)。 请注意,此类不会覆盖 AbstractCollection 类的任何实现。 它只是添加了 equals 和 hashCode 的实现。 此类是 Java 集合框架的成员。 构造函数摘要 修饰符 构造函数 描述 protected AbstractSet() 唯一的构造函数。 方法总结 修饰符和类型 方法 描述 boolean equals(Object o) 比较指定对象与此集合是否相等。 int hashCode() 返回此集合的哈希码值。 boolean removeAll(Collection<?> c) 从此集合中删除指定集合中包含的所有元素(可选操作)。 从类 java.util.AbstractCollection 继承的方法 add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, retainAll, size, toArray, toArray, toString 从接口 java.util.Collection 继承的方法 parallelStream, removeIf, stream 从接口 java.lang.Iterable 继承的方法 forEach 从类 java.lang.Object 继承的方法 clone, finalize, getClass, notify, notifyAll, wait, wait, wait 从接口 java.util.Set 继承的方法 add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, retainAll, size, spliterator, toArray, toArray 构造函数详细信息 AbstractSet protected AbstractSet() 唯一的构造函数。 (用于子类构造函数的调用,通常是隐式的。) 方法详情 equals public boolean equals(Object o) 比较指定对象与此集合是否相等。 如果给定对象也是一个集合,则返回 true,这两个集合具有相同的大小,并且给定集合的每个成员都包含在该集合中。 这确保了 equals 方法在 Set 接口的不同实现中正常工作。 这个实现首先检查指定的对象是否是这个集合; 如果是,则返回 true。 然后,它检查指定的对象是否是一个集合,其大小与该集合的大小相同; 如果不是,则返回 false。 如果是,则返回 containsAll((Collection) o)。 指定者: 接口 CollectionE 中的等于 指定者: 接口 SetE 中的等于 覆盖: 类 Object 中的等于 参数: 参数名称 参数描述 o 要与此集合比较是否相等的对象 返回:...

鸿蒙OS AbstractSequentialList

AbstractSequentialList java.lang.Object |—java.util.AbstractCollection<E& |—|—java.util.AbstractList<E& |—|—|—java.util.AbstractSequentialList<E& public abstract class AbstractSequentialList<E> extends AbstractList<E> 此类提供 List 接口的骨架实现,以最大限度地减少实现此接口所需的工作,该接口由“顺序访问”数据存储(例如链表)支持。对于随机访问数据(如数组),应优先使用 AbstractList 而非此类。 此类与 AbstractList 类相反,因为它实现了“随机访问”方法(get(int index)、set(int index, E element)、add(int index, E element) 和 remove(int index )) 在列表的列表迭代器之上,而不是相反。 要实现一个列表,程序员只需要扩展这个类并提供 listIterator 和 size 方法的实现。对于不可修改的列表,程序员只需要实现列表迭代器的hasNext、next、hasPrevious、previous和index方法即可。 对于可修改的列表,程序员应该另外实现列表迭代器的 set 方法。对于可变大小的列表,程序员应该另外实现列表迭代器的删除和添加方法。 根据 Collection 接口规范中的建议,程序员通常应该提供一个 void(无参数)和集合构造函数。 此类是 Java 集合框架的成员。 字段摘要 从类 java.util.AbstractList 继承的字段 modCount 构造函数摘要 修饰符 构造函数 描述 protected AbstractSequentialList() 唯一的构造函数。 方法总结 修饰符和类型 方法 描述 void add(int index, E element) 在此列表中的指定位置插入指定元素(可选操作)。 boolean addAll(int index, Collection<? extends E> c) 将指定集合中的所有元素插入到此列表中的指定位置(可选操作)。 E get(int index) 返回此列表中指定位置的元素。 IteratorE iterator() 返回此列表中元素的迭代器(以正确的顺序)。 abstract ListIteratorE listIterator(int index) 返回此列表中元素的列表迭代器(以正确的顺序)。 E remove(int index) 移除此列表中指定位置的元素(可选操作)。 E set(int index, E element) 将此列表中指定位置的元素替换为指定元素(可选操作)。 从类 java.util.AbstractCollection 继承的方法 addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, size, toArray, toArray, toString 从类 java.util.AbstractList 继承的方法 add, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, removeRange, subList 从接口 java.util.Collection 继承的方法 parallelStream, removeIf, stream 从接口 java.lang.Iterable 继承的方法 forEach 从接口 java.util.List 继承的方法 addAll, contains, containsAll, isEmpty, remove, removeAll, replaceAll, retainAll, size, sort, spliterator, toArray, toArray 从类 java.lang.Object 继承的方法 clone, finalize, getClass, notify, notifyAll, wait, wait, wait 构造函数详细信息 AbstractSequentialList protected AbstractSequentialList() 唯一的构造函数。 (用于子类构造函数的调用,通常是隐式的。) 方法详情 get public E get(int index) 返回此列表中指定位置的元素。...

鸿蒙OS AbstractQueue

AbstractQueue java.lang.Object |—java.util.AbstractCollection<E& |—|—java.util.AbstractQueue<E& public abstract class AbstractQueue<E> extends AbstractCollection<E> implements Queue<E> 这个类提供了一些 Queue 操作的骨架实现。 当基本实现不允许空元素时,此类中的实现是合适的。 add、remove 和 element 方法分别基于 offer、poll 和 peek,但会抛出异常,而不是通过 false 或 null 返回来指示失败。 扩展此类的 Queue 实现必须至少定义一个不允许插入空元素的方法 Queue#offer,以及方法 Queue#peek、Queue#poll、Collection#size 和 Collection#iterator。 通常,其他方法也会被覆盖。 如果无法满足这些要求,请考虑将 AbstractCollection 子类化。 此类是 Java 集合框架的成员。 构造函数摘要 修饰符 构造函数 描述 protected AbstractQueue() 子类使用的构造函数。 方法总结 修饰符和类型 方法 描述 boolean add(E e) 如果可以在不违反容量限制的情况下立即将指定元素插入此队列,则在成功时返回 true,如果当前没有可用空间则抛出 IllegalStateException。 boolean addAll(Collection<? extends E> c) 将指定集合中的所有元素添加到此队列。 void clear() 从此队列中删除所有元素。 E element() 检索但不删除此队列的头部。 E remove() 检索并删除此队列的头部。 从类 java.util.AbstractCollection 继承的方法 contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString 从接口 java.util.Collection 继承的方法 contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray 从接口 java.lang.Iterable 继承的方法 forEach 从类 java.lang.Object 继承的方法 clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait 从接口 java.util.Queue 继承的方法 offer, peek, poll 构造函数详细信息 AbstractQueue protected AbstractQueue() 子类使用的构造函数。 方法详情 add public boolean add(E e) 如果可以在不违反容量限制的情况下立即将指定元素插入此队列,则在成功时返回 true,如果当前没有可用空间则抛出 IllegalStateException。 如果 offer 成功,此实现返回 true,否则抛出 IllegalStateException。 指定者: 添加接口CollectionE 指定者: 添加接口QueueE 覆盖: 添加类 AbstractCollectionE 参数: 参数名称 参数描述 e 要添加的元素 返回: true(由...