将 ArrayList 转换为数组(有点不同)

Converting ArrayLists to Arrays (A bit different)

我知道这个问题在 Stack Overflow 中被问了很多次,但我的有点不同。

我知道 ArrayList 从索引 1 开始,Arrays 从索引 0 开始。我说得对吗?

如果不是,那么当我将 ArrayList 转换为数组时。

例如:代码

List<String> list = new ArrayList<String>();

list.add("India");
list.add("Switzerland");
list.add("Italy");
list.add("France");

String [] countries = list.toArray(new String[list.size()]);

所以如果我的第一条评论是正确的(如果是的话。因为在网上我发现 3/4 的人说数组列表从 0 开始,1/4 的人说数组列表从 1 开始。我是初学者所以我不知道,哪个是正确的?

所以如果 ArrayList 从 1 开始。

所以Ex: Code可以转换成

List<String> list = new ArrayList<String>();

list.add("India");
list.add("Switzerland");
list.add("Italy");
list.add("France");

String [] countries = list.toArray(new String[list.size()-1]);

请问。让我知道。 谢谢!

String [] countries = list.toArray(new String[list.size()-1])

这行代码将生成一个数组,其中给定列表中的国家/地区减少了最后一行。

arrayslists 索引都从 Java 中的 0 开始。 数组和列表中的每个第一个元素都以等于 0 的索引开头。 JAVA API 中的每个列表都实现了 Collection 接口及其 size() 方法 returns 所用集合中元素的确切数量。

看看这个:Java ArrayList Index

ArrayList 的索引从零开始,Java、JavaScript、Python、Ruby、C#、R、C 中的所有集合也是如此...

ArrayList 类似于普通数组,从索引 0 开始。

您可以使用此代码进行检查。

ArrayList<String> list= new ArrayList<String>();

list.add("one");
list.add("two");
list.add("three");

for (int i = 0; i < list.size(); i++) {
    System.out.println(i);
            System.out.println(list.get(i)); }