import java.util.*;public class BookComp implements Comparator{
public int compare(Object object1,Object object2)
{
int time1[]=new int[3];
int time2[]=new int[3];
String j1=((Book)object1).time;
String j2=((Book)object2).time;
String split="-";
StringTokenizer token1 = new StringTokenizer(j1, split);
int i=0;
while (token1.hasMoreTokens())
{
time1[i]=Integer.parseInt(token1.nextToken());//截取时间放入字符串中
i++;
}
StringTokenizer token2 = new StringTokenizer(j2, split);
i=0;
while (token2.hasMoreTokens())
{
time2[i]=Integer.parseInt(token2.nextToken());//截取时间放入字符串中
i++;
}
for(i=0;i<3;i++)
{
if(time1[i]<time2[i]) return -1;
else if (time1[i]>time2[i]) return 1;
else return 0;
}
}}
拜托拜托~~~~
public int compare(Object object1,Object object2)
{
int time1[]=new int[3];
int time2[]=new int[3];
String j1=((Book)object1).time;
String j2=((Book)object2).time;
String split="-";
StringTokenizer token1 = new StringTokenizer(j1, split);
int i=0;
while (token1.hasMoreTokens())
{
time1[i]=Integer.parseInt(token1.nextToken());//截取时间放入字符串中
i++;
}
StringTokenizer token2 = new StringTokenizer(j2, split);
i=0;
while (token2.hasMoreTokens())
{
time2[i]=Integer.parseInt(token2.nextToken());//截取时间放入字符串中
i++;
}
for(i=0;i<3;i++)
{
if(time1[i]<time2[i]) return -1;
else if (time1[i]>time2[i]) return 1;
else return 0;
}
}}
拜托拜托~~~~
if (time1[i] < time2[i])
return -1;
else if (time1[i] > time2[i])
return 1;
else
return 0;
}这段代码有意义吗?
改成
i=0;
if (time1[i] < time2[i])
return -1;
else if (time1[i] > time2[i])
return 1;
else
return 0;我看,你的算法有问题。
int a;
for(i=0;i <3;i++)
{
if(time1[i] <time2[i]) a=-1;
else if (time1[i]>time2[i]) a=1;
else a=0;
} return a;
循环前声明一个int x=1;
再在if语句中修改x
最后return x;
不过我知道错在哪儿了,谢谢你们~