如果我想访问数组中的元素,则可以使用以下表达式:array [index]。如果我想访问数组内部数组中的元素,则可以使用以下表达式:array [index] [index]。我的问题是,如果该数组在arraylist内,该如何访问该数组中的元素?我必须使用.get方法访问arraylist中的元素。进行诸如arraylist.get(index)之类的操作只会返回该数组,而我无法访问该数组内的任何元素。请帮忙!
答案 0 :(得分:1)
结合使用括号(调用方法)和方括号(访问数组)。
myList.get(…)[…]
将ArrayList
定义为包含数组。在这种情况下,将包含String
个对象的数组。
List < String[] > list = new ArrayList <>( 2 );
人口。
String[] a1 = { "alpha" , "beta" , "gamma" };
String[] a2 = { "Bill Bixby" , "Lana Lang" , "Wendy Melvoin" , "Lisa Coleman" };
list.add( a1 );
list.add( a2 );
通过调用List
从get
中检索数组。请注意,get
和数组都使用List::get
使用令人讨厌的从零开始的计数。因此,第二个元素是1
。
String ll = list.get( 1 )[ 1 ]; // Zero-based counting on both the list and the array.
System.out.println( ll );
Lana Lang
该代码的较长版本是这样。
String[] array = list.get( 1 ) ; // Return the 2nd element’s array.
String ll = array[ 1 ]; // Access the 2nd element in the array, a String object.
提示:一般来说,最好只使用集合,而不要使用数组。数组没什么问题,但是它们很简单。集合还提供许多其他功能。尽管阵列速度更快且使用的内存更少,但对于大多数面向业务的应用程序场景而言,这都不是重要考虑因素。
提示:您可能会发现Java 9及更高版本中添加的新List.of
方法很方便。如果您使用数组的简单文字语法,List.of
,List.copyOf
(在Java 10中)和Map.of
可能会成功。