Wil*_*ill 9 java arrays select instantiation
如何创建/实例化一个数组,使其等于另一个数组的子字符串,其中子字符串的大小未知:
int n; //some number derived somewhere else
String[] grp = elements[i] to elements[i+n];
Run Code Online (Sandbox Code Playgroud)
NPE*_*NPE 16
public static <T> T[] copyOfRange(T[] original,
int from,
int to)
Run Code Online (Sandbox Code Playgroud)
将指定数组的指定范围复制到新数组中.range(
from)的初始索引必须介于0和0之间original.length.值atoriginal[from]放在副本的初始元素中(除非from == original.length或from == to).原始数组中后续元素的值将放入副本中的后续元素中.range(to)的最终索引(必须大于或等于from)可能大于original.length,在这种情况下,null将被放置在索引大于或等于的副本的所有元素中original.length - from.返回数组的长度为to - from.生成的数组与原始数组完全相同.
在你的情况下:
String[] grp = Arrays.copyOfRange(elements, i, i + n);
Run Code Online (Sandbox Code Playgroud)
你会用的Arrays.copyOfRange().
这是一个例子:
String[] original = some array;
String[] grp = Arrays.copyOfRange(original, i, i + n);
Run Code Online (Sandbox Code Playgroud)
该Javadoc中的Arrays类有许多有关方法的信息: