如什么样的数据放在map中比较合适,它放在其它容器比有什么特别之处等;
  Iterator可以用在集合中,还能用在什么地方呢

解决方案 »

  1.   

    key-value 对可以考虑放在 Map 里面,比如你想做一个英汉词典小程序,就可以这么做。
      

  2.   

    Java中的范型.
    給你貼我以前的學習代碼
      1 import java.util.Map;
      2 import java.util.HashMap;
      3 import java.util.HashSet;
      4 import java.util.Set;
      5 import java.util.Iterator;
      6
      7
      8 class Hashmaptest {
      9
     10
     11         public static void main(String[] args) {
     12
     13                 Map<String, String> map = new HashMap<String, String>();
     14                 map.put("key1", "value1");
     15                 map.put("key2", "HashMap value2");
     16
     17                 System.out.println(map.get("key2"));
     18
     19                 Set<String> set = new HashSet<String>() ;
     20                 set.add("this is HashSet  test1") ;
     21                 set.add("this is HashSet  test2") ;
     22
     23
     24
     25                 Iterator<String> iter = set.iterator() ;
     26                 while (iter.hasNext()) {
     27                         System.out.println(iter.next());
     28                 }
     29                 for(String str: set){
     30                         System.out.println(str);
     31                 }
     32
     33
     34         }
     35 }
      

  3.   

    map是键-值对应,我知道,我想知道的是什么情况下用键值对,用数组或是其它二维容器不行吗
      

  4.   

    http://blog.csdn.net/XXKKFF/archive/2007/01/18/1486459.aspx
      

  5.   

    map是键-值对应,我知道,我想知道的是什么情况下用键值对,用数组或是其它二维容器不行吗
    以上方法也可以,不过还要自己写检索方法,而map自动会帮你完成检索工作。
      

  6.   

    感觉map用于“键值对”这种用法很直观,不需要太多讨论吧?
    类似于字典之类的,直觉用map就OK了。至于Iterator,本义是“迭代器”,即对于多个元素的集合,依次枚举出它的所有元素,每个元素只被访问一次,且没有遗漏。
    那么,只要是“由多个元素组成的”,都可以引入Iterator咯,如Set、List、Map,或是你自已写的任何“由多个元素组成的类”,当然,这种情况下就需要你自已扩展Iterator接口来实现全体的“迭代器”了!^_^
      

  7.   

    看来大家都是多面手啊,呵呵,学Unix的Java也是杠杠的啊
      

  8.   

    其实,我也不会Map集合使用Iterator迭代器 
      反正我用循环能遍历出来就行了吧。。
      

  9.   

    Iterator it = map.entrySet().iterator(); 这样来就好迭代啦
      

  10.   

    迭代器的用法一般是:Iterator iterator = Class1.getIterator();
    while( iterator.hasNext() ) {
        Class2 i = iterator.next();
        // TODO: 
    }
      

  11.   

    在arraylist类里,有个实现了Iterator接口的内部类,当你调用了Iterator方法,它会返回这个内部类,因为它实现了iterator接口,所以,会有hasnext,next,和remove三个方法,
    所以,你一个A对象(arraylist), 一旦用了iterator方法,就会返回一个B(itertor对象)给你,而你对这个对象的remove,A对象也会变。
    你会发现,collection继承了iterable接口,iterable就有一个iterator方法,所有实现collection的类都必须间接或直接地实现这个方法。
    我没有去看还有哪些地方还有用iterator方法,但你可以去找一下有哪个类实现了iterable接口
    语法上来讲,任何继承了iterable接口的类都可以用iterator,我个人感觉上,只有类似数组样的类才要实现iterable.
      

  12.   

    map:key——value
    通常要索引时会用到
    就像字典里的通过拼音查字一样。
      

  13.   

    分不清iterator和foreach有什么区别   反正用foreach的多谢(iteraor还有要多写一句 Iterator it = list.iterator();)