java编程n个集合每次从每个集合里面取出一个元素组成一个字符串列出所有组合算法 求助大神:java 中 现有一个list 要取出list中所...

作者&投稿:哀哗 (若有异议请与网页底部的电邮联系)
import java.util.ArrayList;
import java.util.List;

public class XX {

 
    public static void main(String[] args)  
    {  
        String[] arr1 = { "1", "2","3","4"};  
        String[] arr2 = { "a", "b","c","d" };  
        String[] arr3 = { "A","B","G","H" };  
        List<String[]> list = new ArrayList<String[]>();  
        list.add(arr1);  
        list.add(arr2);  
        list.add(arr3);  
        test(list, arr1, "");  
    }  
  
    public static void test(List<String[]> list, String[] arr, String str)  
    {  
        for (int i = 0; i < list.size(); i++)  
        {  
            //取得当前的数组  
            if (i == list.indexOf(arr))  
            {  
                //迭代数组  
                for (String st : arr)  
                {  
                    st = str + st;  
                    if (i < list.size() - 1)  
                    {  
                        test(list, list.get(i + 1), st);  
                    }  
                    else if (i == list.size() - 1)  
                    {  
                        System.out.println(st);  
                    }  
                }  
            }  
        }  
    }  
}

计算结果:

1aA

1aB

1aG

1aH

1bA

1bB

1bG

1bH

1cA

1cB

1cG

1cH

1dA

1dB

1dG

1dH

2aA

2aB

2aG

2aH

2bA

2bB

2bG

2bH

2cA

2cB

2cG

2cH

2dA

2dB

2dG

2dH

3aA

3aB

3aG

3aH

3bA

3bB

3bG

3bH

3cA

3cB

3cG

3cH

3dA

3dB

3dG

3dH

4aA

4aB

4aG

4aH

4bA

4bB

4bG

4bH

4cA

4cB

4cG

4cH

4dA

4dB

4dG

4dH



多重循环遍历?

java实现:有n个char数组(List<char[]>),从每个数组取出一个char组成一个字符串,输出所有的组合~

import java.util.ArrayList;import java.util.List;public class Test {public static void main(String args[]) {List list = new ArrayList();list.add(new char[]{'a', 'b', 'e'});list.add(new char[]{'c'});list.add(new char[]{'d', 'f'});list.add(new char[]{'g', 'h'});method("", list);}public static void method(String now, List list) {if (list == null || list.size() == 0) {System.out.println(now);return;} else {//复制一个副本List copy = copyList(list);char [] charArr = copy.get(0);copy.remove(0);for (int i=0; i copyList(List list) {List result = new ArrayList();for (int i=0; i<list.size(); i++) {result.add(list.get(i));}return result;}}

public class Test {public static void main(String[] args) {List list = new ArrayList();list.add("a");list.add("b");list.add("c");list.add("d");String str = "";for(int i=0;i<list.size();i++){str += list.get(i)+",";}System.out.println(str);}}

C语言编程题,输入N 个正整数(10 < Ν≤20 )存入数组 a 中,输出 a 中...
答:int N=1;int num[20] = { 0 };int max, min, sum=0;float ava=0;while (!(N > 10 && N <= 20)){ cout << "请输入N的值:" << endl;cin >> N;} cout << "请输入N个正整数,回车键结束!" << endl;for (int i = 0; i < N; i++)cin >> num[i];max = n...

第1集 第2集
答:js中的数组或集合索引,通常都是从0开始;人类自然语言习惯从1数起.这没有什么不对的.javascript:play(0) 从0开始,便于JS处理 第1集 便于人们理解,如果你写第0集,很多人都不知道该怎么理解它.循环? 这有何难 < For i = 0 To 100 Response.Write " 第" & i+1 & "集 "Next > ...

structs构架
答:Struts 的核心是一个MVC风格的控藏支柱”的集合,帮助开发人员将分散的材料如数据库和页面,结合成一个整体的应用程序。2.2.3 Struts控制器组件 Struts 控制器组件是一个可编程的组件集,允许开发人员定义它们的一次性写这些实现 用户通过超链接和HTML form与Web应用程序进行交互。超链接引导页面显示数他内容,如文本和...

常见的十五种Java开发工具是什么,有什么特点
答:Visual Age for Java是一个非常成熟的开发工具,它的特性以于IT开发者和业余的Java编程人员来说都是非常用有用的。它提供对可视化编程的广泛支持,支持利用CICS连接遗传大型机应用,支持EJB的开发应用,支持与Websphere的集成开发,方便的bean创建和良好的快速应用开发(RAD)支持和无文件式的文件处理。IBM...

汇编语言程序是什么
答:为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“A D D”代表加法,“M O V”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计...

谁知道JavaScript正则表达式该怎么解析?
答:\n 和第n个分组所匹配的字符相匹配.分组是括号中的子表达式(可能是嵌套的).分组号是从左到右计数的左括号数5.指定匹配的位置我们已经看到了,一个正则表达式中的许多元素才能够匹配字符串的一个字符.例如: \s 匹配的只是一个空白符.还有一些正则表达式的元素匹配的是字符之间宽度为0的空间,而不是...

简述计算机程序设计语言的发展历程。
答:面向对象语言由此必须支持新的程序设计技术,例如:数据隐藏,数据抽象,用户定义类型,继承,多态等等。二、现状 如今通用的编程语言有两种形式:汇编语言和高级语言。汇编语言和机器语言实质是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,容易识别和记忆。源程序经汇编生成的可执行文件...

计算机程序设计语言的发展经历哪几个阶段
答:程序设计语言的发展经历了从机器语言、汇编语言到高级语言的历程。第一代机器语言 机器语言是由二进制 0、1 代码指令构成,不同的 CPU 具有不同的指令系统。机器语言程序难编写、难修改、难维护,需要用户直接对存储空间进行分配,编程效率极低。这种语言已经被渐渐淘汰了。第二代汇编语言 汇编语言指令是...

C语言编程题目,关于十个评委给选手打分的问题,去掉一个最高分和最低分...
答:输入好像应该用%lf 而且输出应该是%.1f 不是%.1lf

怎么把java编码设置成全局
答:1、JDK (Java Development Kit)Java开发工具集 从初学者角度来看,采用JDK开发Java程序能够很快理解程序中各部分代码之间的关系, 有利于理解Java面向对象的设计思想。JDK的另一个显著特点是随着Java (J2EE、J2SE 以及J2ME)版本的升级而升级。但它的缺点也是非常明显的就是从事大规模企业级Java 应用开发非常困难,不能...