猿问

如何调用对象数组中对象的属性

题目.输入10名学生的身高,获得最高的学生高度,使用对象数组参数来完成。

package studentbiz;

import java.util.Arrays;

import java.util.Scanner;

public class WfSixBody {

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

WorkForSix[] Height=new WorkForSix[10];

for(int j=0;j<Height.length;j++){

WorkForSix Stuheight=new WorkForSix();

System.out.println("请输入第"+(j+1)+"个同学的身高");

int height=input.nextInt();

Stuheight.Stuheight=height;

Height[j]=Stuheight;

}

Height[10].Print();//WorkForSix 类的Print()方法调用无法执行,为什么呢?T__T  ?

                        /*想对Height[10]对象数组中的Stuheight对象的Stuheight(学生身高)属性进行排序(升序),但                                          Arrays.sort();无法实现,有什么方法可以实现

                        */

}

}

package studentbiz;

import java.util.Scanner;

public class WorkForSix {

public int Stuheight=0;//学生身高

public String name="NULL";//学生姓名

public int oldNum=0;//学生年龄

public String sex="null";//学生性别

public void Print(){

for(int i=0;i<10;i++){

System.out.println("输出第"+(i+1)+"个同学的身高为:"+Stuheight);

}

}

}

求各位大神帮我解决下 T__T

wuli雪宝
浏览 3627回答 4
4回答

KXFT

Height[10].Print();这行改成Height[9].Print();你的数组只有10个元素,从Height[0]到Height[9],Height[10]是第11个,还有就是分号你用的中文的,注意一下中英文符号问题。还有就是你这个代码运行起来逻辑方面有问题,你把最后一个同学的身高赋值给了Stuheight,然后重复输出了10,结果都是最后一个人的身高。你给数组赋的值也不是你输入的身高,反正问题很多,你在思考一下吧,望采纳

wuli雪宝

只能采纳一个哒。。。
随时随地看视频慕课网APP

相关分类

Java
我要回答