使用反射实现向 ArrayList 集合中增删改查的示例代码如下:

import java.lang.reflect.*;
import java.util.ArrayList;

public class ReflectionExample {
    public static void main(String[] args) throws Exception {
        // 创建 ArrayList 对象
        ArrayList<String> arrayList = new ArrayList<>();

        // 获取 ArrayList 的 Class 对象
        Class<?> arrayListClass = Class.forName('java.util.ArrayList');

        // 获取 add 方法
        Method addMethod = arrayListClass.getMethod('add', Object.class);

        // 调用 add 方法向 ArrayList 中添加元素
        addMethod.invoke(arrayList, 'Hello');
        addMethod.invoke(arrayList, 'World');

        // 获取 size 方法
        Method sizeMethod = arrayListClass.getMethod('size');

        // 调用 size 方法获取 ArrayList 的大小
        int size = (int) sizeMethod.invoke(arrayList);
        System.out.println('ArrayList size: ' + size);

        // 获取 get 方法
        Method getMethod = arrayListClass.getMethod('get', int.class);

        // 调用 get 方法获取 ArrayList 中的元素
        String element = (String) getMethod.invoke(arrayList, 0);
        System.out.println('Element at index 0: ' + element);

        // 获取 remove 方法
        Method removeMethod = arrayListClass.getMethod('remove', int.class);

        // 调用 remove 方法删除 ArrayList 中的元素
        removeMethod.invoke(arrayList, 0);

        // 调用 size 方法获取 ArrayList 的大小
        size = (int) sizeMethod.invoke(arrayList);
        System.out.println('ArrayList size after remove: ' + size);
    }
}

这段代码演示了通过反射的方式,动态调用 ArrayList 的方法实现增删改查操作。首先使用Class.forName方法获取 ArrayList 的 Class 对象,然后使用getMethod方法获取需要调用的方法,通过invoke方法调用方法完成相应的操作。

Java 反射操作 ArrayList:增删改查示例

原文地址: https://www.cveoy.top/t/topic/qvR4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录