当前位置: 代码迷 >> Web前端 >> list 地图 内部类 遍历
  详细解决方案

list 地图 内部类 遍历

热度:306   发布时间:2012-11-22 00:16:41.0
list map 内部类 遍历
  实习好久都没有入门,最基础的java知识没有掌握,从今天起从写最小的1+1=2的例子开始学习java。
 
   遇到问题,今天学习haspmap、map、treemap 以及list的用法,自己写了一些小例子;在写hashcode的时候,定义Map<k,v> map = new HashMap<k,v>();,向map.put(k , v)传值时,总是报类型不匹配的错误,我仔细检查了,代码并没有发现类型不匹配但是报的错误,让我很奇怪,由于对基础知识不了解,所以不知道哪里错了;后来请教了同事,找到了原因;
   由于我调用了自己写的一个类,而我写的类是内部类,在外部类类中调用内部类要加上外部类的修饰,所以一直提示类型不匹配的错误;

   修改过来以后我有根据今天学习的知识给自己出了个小的例子,自定义一个类,定义一个内部类,然后将内部类实例化,将其放到map中并用list遍历出来(这是第一次自己写代码);

   代码如下:
/**
* 此为map和内部类结合的小例子,以及类的实例化的使用
* 接下来,要利用list将实例化的列表打印出来;
* @author hong.su
*
*/

public class InnerClass {

public static void  main (String[] args){
Student student = new InnerClass().new Student();
Map<Integer, String> map = new HashMap<Integer, String>();
student.setId(1);
student.setName("美女");
map.put(student.getId(), student.getName());
Map<Integer, String> map1 = new HashMap<Integer, String>();
student.setId(2);
student.setName("帅哥");
map1.put(student.getId(), student.getName());
List<Map<Integer, String>> list = new ArrayList<Map<Integer, String>>();
list.add(map);
list.add(map1);
for (int i = 0; i < list.size(); i++) {
System.out.println(i + " " + list.get(i));
}

// list.add(map2);

// System.out.print("my number is:" + student.getId() + " ,");
// System.out.println("my name is:" + list.get(student.getId()));

}

/**
*
* 定义一个类,以及set和get方法
* @author hong.su
*
*/
class Student{

private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private String name;

}

}

 
  相关解决方案