A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 桃花龙 中级黑马   /  2014-2-18 09:53  /  1087 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 何伟超 于 2014-2-18 10:31 编辑

import java.util.*;
class students implements Comparable//定义students类
{
  private String name;
  private int age;
  private String por;
  students (String name,int age,String por)
{
  this.name = name;
  this.age = age;
  this.por = por;
}
public String getname()
{
  return name;
}
public int getage()
{
  return age;
}
public String getpor()
{
  return por;
}
}

class setmap
{
public static void main(String[] args) //主函数
{
  
  ArrayList st =new ArrayList();
  st.add(new students("lishi1",22,"sum"));
  st.add(new students("lishi2",21,"pub"));
  st.add(new students("lishi3",12,"sum"));
  st.add(new students("lishi4",32,"eng"));
  itera(st);调用迭代器函数。
  
  
}
public static <students> void itera(ArrayList<students> ar)//迭代器函数
{
  Iterator<students> it = ar.iterator();
  
  while(it.hasNext())
  {
   students ss = it.next();
   System.out.println(ss.getname());//问题。这里的SS老报错,显示ss为obj类没有getname()方法!!!!
                                                          setmap.java:83: 找不到符号
                                                            符号: 方法 getname()
                                                                 位置: 类 java.lang.Object
                                                                                         System.out.println(ss.getname());
   
  }
}
}



评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

4 个回复

倒序浏览
类名大写,测试类公共,弄好规范,不然看起来很别扭的
回复 使用道具 举报
package com.itheima;

import java.util.*;
class Students //定义students类
{
  private String name;
  private int age;
  private String por;
  Students (String name,int age,String por)
{
  this.name = name;
  this.age = age;
  this.por = por;
}
public String getname()
{
  return this.name;
}
public int getage()
{
  return this.age;
}
public String getpor()
{
  return this.por;
}

}

public class Setmap
{
public static void main(String[] args){
  
  ArrayList st =new ArrayList();
  st.add(new Students("lishi1",22,"sum"));
  st.add(new Students("lishi2",21,"pub"));
  st.add(new Students("lishi3",12,"sum"));
  st.add(new Students("lishi4",32,"eng"));
  itera(st);//调用迭代器函数。
  
  
}
public static void itera(ArrayList<Students> ar)//迭代器函数
{
  Iterator<Students> it = ar.iterator();
  
  while(it.hasNext())
  {
   Students ss = it.next();
   System.out.println(ss.getname());
   System.out.println(ss.getage());

  }
}
}

回复 使用道具 举报
没做大的改动。在你基础上改了下,只单纯迭代无需实现接口,set get方法按规范写吧,最好都有,也不要少this
回复 使用道具 举报
张东健 发表于 2014-2-18 10:53
没做大的改动。在你基础上改了下,只单纯迭代无需实现接口,set get方法按规范写吧,最好都有,也不要少thi ...

谢谢大神指点。对照终于找出了错误点。以后慢慢习惯就好了新手上课看的住记不住,呵呵。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马