package algorithm;
import java.util.Arrays;
/**
* Java 多维数组组合算法
* @author liuystudy@163.com
*/
public class Combination {
private static String[] temp;
public static void main(String[] args) {
String[][] array = new String[][]{
{"175M", "180M", "185M"},
{"65K", "75K"},
{"男", "女"},
{"大", "小"}
};
temp = new String[array.length];
combination(array, 0, 0);
temp[array.length - 1] = array[array.length - 1][array[array.length - 1].length - 1];
System.out.println(Arrays.toString(temp));
}
private static void combination(String[][] array, int i, int j){
for(; i < array.length; i++){
for(; j < array[i].length; j++){
temp[i] = array[i][j];
//System.out.println(temp[i]);
combination(array, i + 1, 0);
if(j + 1 < array[i].length){
System.out.println(Arrays.toString(temp));
}
}
}
}
}
import java.util.Arrays;
/**
* Java 多维数组组合算法
* @author liuystudy@163.com
*/
public class Combination {
private static String[] temp;
public static void main(String[] args) {
String[][] array = new String[][]{
{"175M", "180M", "185M"},
{"65K", "75K"},
{"男", "女"},
{"大", "小"}
};
temp = new String[array.length];
combination(array, 0, 0);
temp[array.length - 1] = array[array.length - 1][array[array.length - 1].length - 1];
System.out.println(Arrays.toString(temp));
}
private static void combination(String[][] array, int i, int j){
for(; i < array.length; i++){
for(; j < array[i].length; j++){
temp[i] = array[i][j];
//System.out.println(temp[i]);
combination(array, i + 1, 0);
if(j + 1 < array[i].length){
System.out.println(Arrays.toString(temp));
}
}
}
}
}