public void Do()
{
int max_index=0; long flag;
int j=0;
for(int i=0;i<stu.length;i++)
{
max_index=i; for(j=i+1;j<stu.length;j++)
{
if(stu[j].getNum()>stu[max_index].getNum())
{
max_index=j;
}
} flag=stu[max_index].getNum();
stu[max_index].getNum()=stu[i].getNum();
stu[i].getNum()=flag;
}
}
为什么stu[max_index].getNum()是一个对象呢?
要怎么改呢?
{
int max_index=0; long flag;
int j=0;
for(int i=0;i<stu.length;i++)
{
max_index=i; for(j=i+1;j<stu.length;j++)
{
if(stu[j].getNum()>stu[max_index].getNum())
{
max_index=j;
}
} flag=stu[max_index].getNum();
stu[max_index].getNum()=stu[i].getNum();
stu[i].getNum()=flag;
}
}
为什么stu[max_index].getNum()是一个对象呢?
要怎么改呢?
stu应该是一个全局变量。
你把到变量定义的位置就知道了。
int max_index=0; long flag;
int j=0; for(j=1;j<stu.length;j++) {
if(stu[j].getNum()>stu[max_index].getNum())
max_index=j;
} flag=stu[max_index].getNum();
}
所以把代码补全吧。
不会吧,从顶楼程序来看,stu[max_index].getNum()得到的是long,简单数据类型的值啊。