对不起:)我想是这样的: s[0] = new String(id.get(0).toString()); s2[0] = new String(id.get(1).toString()); s[1] = new String(id.get(3).toString()); s2[1] = new String(id.get(4).toString()); 、、、、、、、
int i=0; int s=0; int s2=0; while(i<id.length()){ if(i mod 2==0) s[s++]=new String(id.get[i++].toString()); else s2[s2++]=new String(id.get[i++].toString()); }
来试试我的办法,我虽然没测试,但是我觉得没问题,而且避免了除以2这样的算法。 Iterator it = id.iterator(); int i = 0; for(;id.hasNext();){ String str1 = (id.next()).toString(); String str2 = (id.next()).toString(); s[i] = str1; s[i] = str2; i ++; }
if (id != null) { int j = id.size(); int la=0,lb=0; if (j%2==0) la = j/2; else la = (j+1)/2; lb=la-1; if (lb<0) lb=0; s = new String[la]; s2 = new String[lb]; for(int i=0;i<id.size();i++) if (i%2==0) s[i/2]=(String)id.get(i); else s2[i/2]=(String)id.get(i); }
我的测试过了。在JBuilder9下通过。
不好意思,上面的程序有一个Bug,修改如下: Iterator it = id.iterator(); int i = 0; for(;id.hasNext();){ String str1 = (id.next()).toString(); String str2 = ""; if(id.hasNext()) str = (id.next()).toString(); s[i] = str1; s[i] = str2; i ++; }
s[0] = new String(id.get(0).toString());
s2[0] = new String(id.get(1).toString());
s[1] = new String(id.get(3).toString());
s2[1] = new String(id.get(4).toString());
、、、、、、、
s2是id.get(2、4、6、8、10、、、、、、)取的是偶数
int s=0;
int s2=0;
while(i<id.length()){
if(i mod 2==0)
s[s++]=new String(id.get[i++].toString());
else
s2[s2++]=new String(id.get[i++].toString());
}
if(i % 2==0)
s[s++]= id.get(i++).toString();
else
s2[s2++]=id.get(i++).toString();
}
如果你的id里面存放的都是String的话
这样做好一点
(String)id.get(i++);
Iterator it = id.iterator();
int i = 0;
for(;id.hasNext();){
String str1 = (id.next()).toString();
String str2 = (id.next()).toString();
s[i] = str1;
s[i] = str2;
i ++;
}
if (id != null)
{
int j = id.size();
int la=0,lb=0;
if (j%2==0)
la = j/2;
else
la = (j+1)/2;
lb=la-1;
if (lb<0) lb=0;
s = new String[la];
s2 = new String[lb];
for(int i=0;i<id.size();i++)
if (i%2==0)
s[i/2]=(String)id.get(i);
else
s2[i/2]=(String)id.get(i);
}
Iterator it = id.iterator();
int i = 0;
for(;id.hasNext();){
String str1 = (id.next()).toString();
String str2 = "";
if(id.hasNext())
str = (id.next()).toString();
s[i] = str1;
s[i] = str2;
i ++;
}
哦,不过楼主的字符串数组是
s和s2
所以你还是要改一下~~~~~~
呵呵