2014-02-14 23 views
2

我對Java 1.6的這個方法。但這不適用於Java 1.4.2。我開始知道這是從1.5引入的。那麼,在1.4.2中有沒有其他等效的方法來編寫它?字符串設定的Java 1.4.2

Set keys = this.getMap().keySet();  

      for (String key :keys){... 
              .. 
          } 
+2

是根本就沒有使用'foreach'循環使用一般的循環。 –

+0

你能告訴我怎麼能acheive呢?我遍歷每個對象。 –

+0

沒有意識到這一天會來,當人們學會首先使用增強的for循環,然後來了解老派的做法:) – adarshr

回答

3

你需要一個老同學的迭代器:

// Old skool set (no generics) 
    Set foo = new HashSet(); 
    foo.add("bar"); 
    foo.add("frobnicate"); 

    // Old skool iterator (no generics, needs typecasting) 
    Iterator iFoo = foo.iterator(); 
    while (iFoo.hasNext()) 
    { 
     String something = (String)iFoo.next(); 
    }   
0

使用Iterator

Iterator it = this.getMap().keySet().iterator(); 
while(it.hasNext()) { 
    // do stuff 
    String s = (String)it.next(); 
} 
+1

有在Java中沒有泛型1.4 – halex

+1

泛型用Java 1.5中引入了! –

+0

由於相應地編輯。 –

0

代碼:

import java.util.HashMap; 
import java.util.Iterator; 
import java.util.Map; 
import java.util.Set; 

public class Example { 
    public static void main(String[] args) { 
     Map map = new HashMap(); 
     map.put("key1", "value1"); 
     map.put("key2", "value2"); 

     Set keys = map.keySet(); 
     Iterator iterator = keys.iterator(); 

     while(iterator.hasNext()) 
      System.out.println(iterator.next()); 
    } 
} 

輸出:

key2 
key1