Java:有一种简单的方法来选择数组的子集吗?

Nul*_*uli 53 java

我有一个String[]至少有2个元素.

我想创建一个新String[]元素,其中包含元素1.所以..基本上,只是跳过第一个.

这可以在一行中完成吗?容易?

Boz*_*zho 103

Arrays.copyOfRange(array, 1, array.length);
Run Code Online (Sandbox Code Playgroud)

copyOfRange在Java 1.6中添加了.如果您不是最新的,您可以使用:

  • 结束指数是独家的 (12认同)
  • 抱歉,java-folks,但是,来自 python 代码,这看起来很荒谬 (4认同)
  • 不,因为数组是基于0的.半开放范围和基于0的索引很好地协同工作. (3认同)

Mar*_*ers 15

String[] subset = Arrays.copyOfRange(originalArray, 1, originalArray.length);
Run Code Online (Sandbox Code Playgroud)

也可以看看:


Grz*_*rek 5

也可以使用 Stream API:

String[] array = {"A", "B"};

Arrays.stream(array).skip(1).toArray(String[]::new);
Run Code Online (Sandbox Code Playgroud)

但是,应该首选Bozho的答案。