import java.util.ArrayList;
import java.util.List;

public class TestProgram {



    public static List<List<Integer>> printAllCombination2(int[] arr) { //1,2,3,4

        if(arr == null || arr.length<1)
            return new ArrayList<>();
        List<List<Integer>> intlist = new ArrayList<>();

        for(int i=0; i<arr.length; i++) {

            int j=i;

            List<Integer> ilist = new ArrayList<>();

            while(j<arr.length) {
                ilist.add(arr[j]);
                intlist.add(ilist);
                j++;
            }

        }

        return intlist;

    }


    public static void main(String[] args) {

        int[] arr = {1,2,3,4};

        System.out.println(" combinations :::: "+printAllCombination2(arr));
    }


} 