数组包装工具-ArrayWrapper
# 📚介绍
ArrayWrapper 是一个用于包装数组并提供一系列数组操作方法的工具类。通过该类,可以对数组进行多种操作,包括获取元素、设置元素、插入元素、替换元素等。
# 🍭使用
# 方法介绍
# 基础方法
of创建ArrayWrapper实例。getRaw获取原始数组对象。length获取数组长度。isPrimitive判断数组是否为原始类型数组。getComponentType获取数组元素类型。getArrayType获取数组类型。isEmpty判断数组是否为空。get获取指定位置的元素。
# 元素索引相关方法
firstNonNull返回数组中第一个非空元素。firstMatch返回数组中第一个匹配规则的值。indexOf返回数组中指定元素所在位置。matchIndex返回数组中第一个匹配规则的值的位置。lastIndexOf返回数组中指定最后的元素所在位置。matchLastIndex返回数组中最后一个匹配规则的值的位置。
# 元素设置相关方法
setOrPadding将元素值设置为数组的某个位置,若索引超出数组长度则进行填充。setOrAppend将元素值设置为数组的某个位置,若索引超出数组长度则进行追加。append将新元素添加到数组末尾。appendArray将新数组追加到数组末尾。insert将新元素插入到数组的指定位置。insertArray将新数组插入到数组的指定位置。replace从数组中的指定位置开始,按顺序使用新元素替换旧元素。edit对每个数组元素执行指定操作并替换为修改后的元素。
# 子数组获取相关方法
getSub获取子数组。getSub获取子数组,带步进参数。
# 数组排序相关方法
isSorted检查数组是否有序。isSorted检查数组是否按指定顺序排序。
例子:
我们定义一个类:
public class MyArrayExample {
public static void main(String[] args) {
// 创建ArrayWrapper实例
ArrayWrapper<int[], Integer> arrayWrapper = ArrayWrapper.of(int.class, 5);
// 设置数组元素
arrayWrapper.setOrAppend(0, 1);
arrayWrapper.setOrAppend(1, 2);
arrayWrapper.setOrAppend(2, 3);
// 获取数组元素
Console.log("Array element at index 1: " + arrayWrapper.get(1));
// 插入元素
arrayWrapper.insert(1, 4);
// 替换元素
arrayWrapper.replace(0, new int[]{5, 6});
// 获取子数组
int[] subArray = arrayWrapper.getSub(1, 3);
Console.log("SubArray: " + Arrays.toString(subArray));
// 判断数组是否有序
boolean isSorted = arrayWrapper.isSorted(Comparator.naturalOrder());
Console.log("Is array sorted: " + isSorted);
}
}
# 支持的操作
ArrayWrapper 支持对数组进行多种操作,例如:
- 创建一个指定长度的空数组。
- 获取数组的原始对象、长度、元素类型等。
- 判断数组是否为空或是否为原始类型。
- 获取数组中指定位置的元素,支持负数索引。
- 查找数组中匹配规则的第一个元素或最后一个元素的位置。
- 设置、追加或插入数组元素。
- 替换数组中的元素。
- 获取数组的子数组。
- 检查数组是否有序,支持自定义排序规则。