import java.util.Arrays;
class ArrayTest
{
public static void main(String[] args)
{ Student[] ss=new Student[]{new Student(1,"zhangsan"),
new Student(2,"lisi"),
new Student(3,"wangwu"),
new Student(3,"mybole")};
Arrays.sort(ss);
for(int i=0;i <ss.length;i++)
{
System.out.println(ss[i]);
}
int index=Arrays.binarySearch(ss,new Student(2,"lisi"));
System.out.println("index="+index);
System.out.println(ss[index]);
}
}
class Student implements Comparable
{
int num;
String name;
Student(int num,String name)
{
this.num=num;
this.name=name;
}
public String toString()
{
return "number="+num+","+"name="+name;
}
public int compareTo(Object o)
{
Student s=(Student)o;
int result=num>s.num ? 1 : (num==s.num ? 0 : -1);
if(0==result)
{
result=name.compareTo(s.name);
}
return result;
}
} 用Eclipse运行通过不了,请高手帮忙解决!!!
class ArrayTest
{
public static void main(String[] args)
{ Student[] ss=new Student[]{new Student(1,"zhangsan"),
new Student(2,"lisi"),
new Student(3,"wangwu"),
new Student(3,"mybole")};
Arrays.sort(ss);
for(int i=0;i <ss.length;i++)
{
System.out.println(ss[i]);
}
int index=Arrays.binarySearch(ss,new Student(2,"lisi"));
System.out.println("index="+index);
System.out.println(ss[index]);
}
}
class Student implements Comparable
{
int num;
String name;
Student(int num,String name)
{
this.num=num;
this.name=name;
}
public String toString()
{
return "number="+num+","+"name="+name;
}
public int compareTo(Object o)
{
Student s=(Student)o;
int result=num>s.num ? 1 : (num==s.num ? 0 : -1);
if(0==result)
{
result=name.compareTo(s.name);
}
return result;
}
} 用Eclipse运行通过不了,请高手帮忙解决!!!
我运行的好好的啊,结果:
number=1,name=zhangsan
number=2,name=lisi
number=3,name=mybole
number=3,name=wangwu
index=1
number=2,name=lisi
JAVA文件名是什么?
number=2,name=lisi
number=3,name=mybole
number=3,name=wangwu
index=1
number=2,name=lisi我也可以运行
{
public static void main(String[] args)
{ 加上之后应该会报错。说明你的文件名错啦。
不会就CAPY吧!!!记得文件名要一致!!!
。。
你里面的东西是怎么写的?
Student[] ss=new Student[]{new Student(1,"zhangsan"),
new Student(2,"lisi"),
new Student(3,"wangwu"),
new Student(3,"mybole")}; //你这里是怎么加的。for(int i=0;i <ss.length;i++)
{
System.out.println(ss[i]); //你这里的循环能循环到哪里?你的上面可没有ss[0]
}