有两数组:
string[] arr1={1,2,3,4}
string[] arr2={a,b}
现要得到这样的组合结果:
1+a
2+b
3+a
4+b
在举例;
string[] arr1={1,2,3,4,5}
string[] arr2={a,b,c}
组合结果:
1+a
2+b
3+c
4+a
5+b

解决方案 »

  1.   

    遍历arr1
    int j=0; //arr2下标
    for(int i=0;i<arr1.length;i++)
    {
      string s = arr1[i]+arr2[j];
      j++;
      if(j=arr2.length) j=0;
    }
    试下.
      

  2.   

    实际上要求每组合一次,arr2数组当前值位置交换到最后
      

  3.   

    wanghui0380 兄,我不是太明白你的意思,你是説奇数偶数平均分配吗
      

  4.   

            private void Form1_Load(object sender, EventArgs e)
            {
                string[] arr1 = { "1", "2", "3", "4" };
                string[] arr2 = { "a", "b" };
                for (int i = 0; i < arr1.Length; i++)
                {
                    arr1[i] =arr1[i]+ arr2[(i + 1) % arr2.Length];
                    MessageBox .Show  (arr1[i].ToString ());
                   
                }
            }
      

  5.   

    string[] arr1={1,2,3,4,5}; 
    string[] arr2={a,b,c} ;
    for(int i=0,arr2length=arr2.length; i<arr1.length;i++)
    {
        arr3[i] = arr1[i]+arr2[i%arr2length];
    }
    这样就可以了
      

  6.   

    string[] arr1={1,2,3,4,5} 
    string[] arr2={a,b,c} 
    string[] arr3 = new string[arr1.getlength(0)];int i=0;
    int j=0;
    foreach(string tmp in arr1)
    {
       if (i > arr2.getlength(0))
       {
          j = i - arr2.getlength(0) ;
       }
       arr3=arri[i]+arr2[j] ;
       i++;
       j = i ;  
    }
      

  7.   

    string[] arr3=new string[arr1.length];
    int j=0;
    for(int i=0;i <arr1.length;i++) 

      arr3[i] = arr1[i]+"+"+arr2[j]; 
      j++; 
      if(j==arr2.length) j=0; 

    参考了下3楼的
      

  8.   


    恩,i%arr2length 这个就是取模的代码,按你的例子也就是 i除以3,还余几
      

  9.   

    楼上正解。string[] Merge(string[] a1,string[] a2)
    {
      string[] res=new string[a1.length];
      for(int i=0;i<a1.length;i++)
        res[i]=string.format("{0}+{1}",a1[i],a2[i%a2.length]);  return res;
    }
      

  10.   

    楼上的同仁们,上面哪个算法速度更快呀,因为数组arr1是存在大数据量的。到时候都是些手机号码
      

  11.   

    肯定是取模快啊 只用遍历一遍arr1 其他不用遍历