如I1,I2,I3,I4,I5两两组合
成:怎么用java实现:,组成后是{I1,I2},{I1,I3}.......的

解决方案 »

  1.   

    int[] x = {1,2,3,4,5};
     for(int i=0;i<x.length-1;i++){
         for(int j=i+1;j<x.length;j++){
             System.out.println(x[i]+","+x[j]);
         }
     }
      

  2.   

    楼上的是两个数不出现重复的,两个数可重复的话用这个class shu{ public static void main(String args[]){
    int a[] = {1,2,3,4,5}; for(int i = 0;i < a.length;i++){
    for(int j = 0;j < a.length;j++){
    System.out.println(a[i] + "," + a[j]);
    }
    } }
    }
      

  3.   

    public class Array {

    public static void main(String []args){
    String a [] = {"I1","I2","I3","I4","I5"};
    int length = 0;
    for(int i = a.length-1;i>=0;i--){
    length=length+i;
    }
    System.out.println(length);
    int k = 0 ;
    String aa[] = new String[length];//所求数组
    while(k<aa.length){
    for(int i = 0;i<a.length-1;i++){
    for(int j = i+1;j<a.length;j++){
    aa[k]= a[i]+","+a[j];
    k++;
    }
    }
    }
    for(String b :aa){
    System.out.println(b);
    }
    }
    }
      

  4.   

    再声明一个数组接收就可以了,下边这个是不重复的组合
    class shu{    public static void main(String args[]){
            int a[] = {1,2,3,4,5};
    int k = 0;
    int n = (a.length * (a.length - 1)) / 2; //数学的排列组合
    String ss[] = new String[n];        for(int i = 0; i<a.length-1; i++){            for(int j = i+1; j < a.length; j++){
    ss[k] = a[i] + "," + a[j];
    k++;
                }
            }    }
    }