Java 无法理解类的数组

Java 无法理解类的数组,java,Java,下面是一段简短的代码片段: someMethod ClassA getClassA() { List<ClassA.ClassB> classAType = Lists.newArrayList(); //Now classAType is loaded with stuff here return ClassA.load(classAType.toArray(new ClassA.ClassB[classAType.size()])); } public abstra

下面是一段简短的代码片段:

someMethod ClassA getClassA() {
  List<ClassA.ClassB> classAType = Lists.newArrayList();
  //Now classAType is loaded with stuff here
  return ClassA.load(classAType.toArray(new ClassA.ClassB[classAType.size()]));
}

public abstract class ClassA {
  //Constructor
  public static abstract class ClassB {
    //some method
  }
}
somethod ClassA getClassA(){
List classAType=Lists.newArrayList();
//现在classAType在这里加载了一些东西
返回ClassA.load(classAType.toArray(新的ClassA.ClassB[classAType.size()]);
}
公共抽象类ClassA{
//建造师
公共静态抽象类B{
//某种方法
}
}
我不理解的部分是
return
语句。我想知道
ClassA.ClassB[classAType.size()]
意味着什么

new ClassA.ClassB[classAType.size()]
返回大小为
classAType.size()的
ClassA.ClassB
对象数组


由于
ClassAType
是一个使用
列表创建的
列表。newArrayList()
列表。newArrayList()
在这里没有定义,所以下一部分是一个假设),
ClassAType.size()
是0。

它正在设置数组的大小。但是它将是0,因为您从未在arraylist中放入任何内容。代码没有太多意义…

方法首先使用
Lists.newArrayList()返回的
ClassA.ClassB
对象创建一个列表。然后,它通过调用静态方法
ClassA.load()
返回
ClassA
,并传递一个参数:类型为
ClassA.ClassB
的空数组,其大小与
classAType
相同

这段代码:

classAType.toArray(new ClassA.ClassB[classAType.size()])

可能看起来有点复杂,但它只是创建了一个包含
classAType
列表中所有元素的数组。

它返回
ClassA.load
返回的方法。
load
返回类型
ClassA
。。。这是
getClassA()
方法的返回类型,这是
ClassA
@noMAD您已经回答了自己的问题。我希望这些不是您在实际程序中使用的变量名,它们会让很多人难以理解:pI在那里有一条注释,说明我加载了arrayList。我没有在这里展示它,因为它与我的问题无关。