Java 反射累加列表值:示例和注意事项
Java 反射累加列表值:示例和注意事项
使用 Java 反射技术可以实现对列表值进行累加。具体步骤如下:
- 获取列表对象的 Class 对象。
- 获取列表对象的 add 方法的 Method 对象。
- 循环遍历列表,并调用 add 方法累加值。
下面是示例代码:
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) throws Exception {
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
Class<?> clazz = list.getClass();
Method addMethod = clazz.getMethod("add", Object.class);
int sum = 0;
for (Integer num : list) {
sum += num;
addMethod.invoke(list, sum);
}
System.out.println(list);
}
}
输出结果为:
[1, 3, 6, 10]
可以看到,列表中的值被累加了。需要注意的是,这种方式会改变列表中原有的值,因此需要谨慎使用。
原文地址: https://www.cveoy.top/t/topic/lsE7 著作权归作者所有。请勿转载和采集!