如有數(shù)組[["白色","黑色"],["64GB","128GB"],["中國移動","中國聯(lián)通"]]要拼接返回一個數(shù)組如["白色/64GB/中國移動","黑色/64GB/中國移動","白色/128GB/中國移動","黑色/128GB/中國移動","白色/64GB/中國聯(lián)通","黑色/64GB/中國聯(lián)通","白色/128GB/中國聯(lián)通","黑色/128GB/中國聯(lián)通"]問題是 數(shù)組[["白色","黑色"],["64GB","128GB"],["中國移動","中國聯(lián)通"]] 不是固定的的 可能只有一個數(shù)組 可能有兩個數(shù)組 可能有三個數(shù)組 可能有四個數(shù)組數(shù)組里的值也不固定 ,可能只有一個,可能有5個有大神在嗎?
1 回答

眼眸繁星
TA貢獻1873條經(jīng)驗 獲得超9個贊
public class test { public static List> source;public static void main(String[] args) { source = new ArrayList<>(); List<String> a = new ArrayList<String>(); a.add("黑色"); a.add("白色"); List<String> b = new ArrayList<String>(); b.add("64G"); b.add("128G"); List<String> c = new ArrayList<String>(); c.add("中國聯(lián)通"); c.add("中國移動"); source.add(a); source.add(b); source.add(c); ArrayList<String> result = new ArrayList<>(); recursion(result, source.get(0), 0, ""); System.out.println(result); } public static void recursion(List<String> result, List<String> para, int num, String choose) { for (int i = 0; i < para.size(); i++) { if (source.size() == num + 1) { result.add(choose + "/" + para.get(i)); } else { recursion(result, source.get(num + 1), num + 1, choose + "/" + para.get(i)); } } } }
添加回答
舉報
0/150
提交
取消