为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

wuli雪宝 2016-07-28 16:16:52
题目.输入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
查看完整描述

4 回答

?
KXFT

TA贡献113条经验 获得超58个赞

Height[10].Print();这行改成Height[9].Print();你的数组只有10个元素,从Height[0]到Height[9],Height[10]是第11个,还有就是分号你用的中文的,注意一下中英文符号问题。

还有就是你这个代码运行起来逻辑方面有问题,你把最后一个同学的身高赋值给了Stuheight,然后重复输出了10,结果都是最后一个人的身高。你给数组赋的值也不是你输入的身高,反正问题很多,你在思考一下吧,望采纳

查看完整回答
1 反对 回复 2016-07-28
  • wuli雪宝
    wuli雪宝
    代码我都是直接在eclipse写好没报错复制过来的,不知道为什么会变成中文的。。。 我也知道我的代码逻辑有问题,在找T_T
?
wuli雪宝

TA贡献2条经验 获得超0个赞

只能采纳一个哒。。。

查看完整回答
反对 回复 2016-07-28
  • 4 回答
  • 0 关注
  • 3588 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信