How to get a slice of a primitive array in Java

3 Answers

0 votes
import java.util.Arrays;
 
public class MyClass
{
    public static void main(String[] args)
    {
        int[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
        int start = 3, end = 6;
 
        int[] slice = Arrays.copyOfRange(arr, start, end + 1);
        
        System.out.println(Arrays.toString(slice));
    }
}





/*
run:

[4, 5, 6, 7]

*/

 



answered Mar 18, 2023 by avibootz
0 votes
import java.util.Arrays;
import java.util.stream.IntStream;

public class MyClass
{
    public static void main(String[] args)
    {
        int[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
        int start = 3, end = 6;
 
        int[] slice = IntStream.range(start, end + 1)
                                .map(i -> arr[i])
                                .toArray();
        
        System.out.println(Arrays.toString(slice));
    }
}





/*
run:

[4, 5, 6, 7]

*/

 



answered Mar 18, 2023 by avibootz
0 votes
import java.util.Arrays;

public class MyClass
{
    public static void main(String[] args)
    {
        int[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
        int start = 3, end = 6;
 
        int[] slice = new int[end - start + 1];
        
        for (int i = 0; i < slice.length; i++) {
            slice[i] = arr[start + i];
        }
        
        System.out.println(Arrays.toString(slice));
    }
}





/*
run:

[4, 5, 6, 7]

*/

 



answered Mar 18, 2023 by avibootz

Related questions

1 answer 208 views
1 answer 156 views
1 answer 173 views
1 answer 206 views
1 answer 156 views
1 answer 218 views
1 answer 235 views
...