◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
java 中内部类数组的初始化方式取决于其类型:匿名内部类数组长度固定。本地内部类("static")和成员内部类数组的长度在初始化后可动态调整,但需使用 arrays.copyof() 等方法。
Java 内部类数组初始化
Java 内部类数组的初始化方式取决于内部类的类型:
1. 匿名内部类数组
// 匿名内部类数组长度固定 MyClass[] arr = new MyClass[] { new MyClass() { /* 匿名内部类实现 1 */ }, new MyClass() { /* 匿名内部类实现 2 */ }, // ... };
2. 本地内部类数组("static" 内部类)
立即学习“Java免费学习笔记(深入)”;
// 本地内部类数组长度固定 MyClass.InnerClass[] arr = new MyClass.InnerClass[] { new MyClass.InnerClass(), new MyClass.InnerClass(), // ... };
3. 成员内部类数组
示例:创建一个成员内部类数组,用于存储 String 对象
public class OuterClass { public class InnerClass { private String value; public InnerClass(String value) { this.value = value; } } public void createInnerClassArray(String[] values) { // 创建指定长度的成员内部类数组 InnerClass[] arr = new InnerClass[values.length]; // 逐个初始化数组元素 for (int i = 0; i < arr.length; i++) { arr[i] = new InnerClass(values[i]); } } }
使用示例:
OuterClass outer = new OuterClass(); String[] values = { "A", "B", "C" }; outer.createInnerClassArray(values);
注意事项:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。