Java输出对象的数组是地址,如何输出其值?
publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubStudentstu1=newStude...
public static void main(String[] args) { // TODO Auto-generated method stub Student stu1 = new Student("001","Zhang","男",65,70,53,80); Student stu2 = new Student("002","Cheng","女",75,75,85,78); Student stu3 = new Student("003","Li","女",68,45,95,72); Student stu4 = new Student("004","Cha","男",67,70,64,62); Student stu5 = new Student("005","Xun","男",65,90,78,85); Student []st = {stu1,stu2,stu3,stu4,stu5}; for(Student c:st){ System.out.println(c); }
展开
4个回答
展开全部
可以重写Student类中的toString()方法,以下例子仅作为参考:
class Student
{
//该类的实例变量
public String no;
public String name;
public String sex;
public int yuwen;
public int shuxue;
public int yingyu;
public int lizong;
//创建构造器
public Student(String no , String name , String sex , int yuwen , int shuxue , int yingyu , int lizong){
this.no = no;
this.name = name;
this.sex = sex;
this.yuwen = yuwen;
this.shuxue = shuxue;
this.yingyu = yingyu;
this.lizong = lizong;
}
//重写toString()方法,该方法输出对象
public String toString(){
return "Student[no: " + no + " , name: " + name +" , sex: " + sex + " , yuwen: " + yuwen + " , shuxue: " + shuxue + " , yingyu: " + yingyu + " , lizong: " + lizong + " ]";
}
}
public class Student1
{
public static void main(String[] args)
{
Student stu1 = new Student("001","Zhang","男",65,70,53,80);
Student stu2 = new Student("002","Cheng","女",75,75,85,78);
Student stu3 = new Student("003","Li","女",68,45,95,72);
Student stu4 = new Student("004","Cha","男",67,70,64,62);
Student stu5 = new Student("005","Xun","男",65,90,78,85);
Student []st = {stu1,stu2,stu3,stu4,stu5};
for(Student c:st){
System.out.println(c);
}
}
}
追问
谢谢!我修改好了!
展开全部
数组中存放的是student对象,输出
(c)就是输出对象student。
如果想输出单个变量 例如姓名,print(c.getName())类似这样。
多个就可以print(c.get.....c.get)
当然有更优雅的方式。
从上面可以看出来c.getName()是调用了姓名的get方法。
你在student里面定义一个方法printMsg(),方法里有一行代码。
打印student所有变量。
for循环里调用c.printMsg()就打印出来了。
(c)就是输出对象student。
如果想输出单个变量 例如姓名,print(c.getName())类似这样。
多个就可以print(c.get.....c.get)
当然有更优雅的方式。
从上面可以看出来c.getName()是调用了姓名的get方法。
你在student里面定义一个方法printMsg(),方法里有一行代码。
打印student所有变量。
for循环里调用c.printMsg()就打印出来了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
输出数组值应该是数组名+[下标名] 比如st[c] 或者st[0] st[1] st[2]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for(int i=0;i<=st.length;i++){
System.out.print(st[i]);
}
System.out.print(st[i]);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询