------ <a href="http://www.itheima.com" target="blank">Windows Phone 7手机开发</a>、<a href="http://www.itheima.com" target="blank">.Net培训</a>、期待与您交流! -------
//集合遍历输出的四种方式
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Demo11
{
public static void main(String[] args)
{
List<String> 1 = new ArrayList();
1.add("1");
1.add("2");
1.add("3");
1.add("4");
System.out.println(1);
//1.推荐使用Iterator对象,迭代输出!
Iterator it = 1.iterator();
while (it.hasNext())
{
System.out.println("迭代输出:"+it.next);
}
//2.对集合进行fore循环!
for(String str:1){
System.out.println("fore集合迭代输出:"+str);
}
//3.for循环迭代,在for方法体内部实例化Iterator对象!
int i=0;//for方法体内定义项不能出现多种不同类型
for(Iterator iter = 1.iterator();i<1.size();i++){
System.out.println("for循环迭代实例化输出:"+iter.next());
}
//4.先将集合转换成数组,再利用数组的遍历输出;
Object[] o=1.toArray();
for ((Object object;o){
System.out.println("转换数组迭代输出:"+ object);
}
}
}
/*List 自己还有一个listIterator()方法,该方法返回ListIterator 对象,ListIterator 继承了Iterator
接口,提供了专门操作List 的方法。在Iterator 上额外增加的方法:
支持双向输出:ListIterator遍历的元素所在的容器都有索引。*/
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class Demo16
{
public static void main(String[] args){
List<Integer> 1 = new ArrayList<Integer>();
1.add(12);
1.add(24):
1.add(36);
1.add(23):
1.add(37):
System.out.println(1);
ListIterator<Integer> it = 1.listIterator();
while(it.hasNext()){
System.out.println("正序:"+it.next());
}
System.out.println("==========================");
//使用向前迭代前必须将游标(指针)移到后边!
while(it.hasPrevious()){
System.out.println("逆序:"+it.previous());
}
}
}
//把Map中的元素取出来
/*方法一:
1 通过entrySet方法变成Set对象
2 调用Set的Iterator方法,此时每个Iterator对象是Map.Entry对象
3 对Map.Entry分离出key-value
方法二:
1 通过keySet得到Map集合有key的Set集合
2 调用Set的Iterator方法,此时每个Iterator对象时key值
3 通过Map的getValue(key)得到value值
*/
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
public class Demo18{
public static void main(String[] args){
Map<Integer,String> m= new HashMap<Integer,String>();
m.put(1,"jack");
m.put(2,"rose");
m.put(3,"lucy");
//第一种方法
Set s = m.entrySet();
Iterator it = s.iterator();
while(it.hasNext()){
Map.Entry me = (Entry) it.next();
System.out.println(me.getKey()+" "+me.getValue());
}
//第二种方法
s = m.keySet();//得到的是key的集合
it = s.iterator();//然后将key迭代出来
while(it.hasNext()){
int i = (int)it.next();
System.out.println(i+" "+m.get(i));
}
}
}