package cn.xiaobing.util;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class IteratorDemo {
public static void main(String[] args) {
List<String> lst = new ArrayList<String>();
lst.add("aaa");
lst.add("bbb");
lst.add("ccc");
lst.add("ddd");
lst.add("eee");
lst.add("fff");
Iterator<String> iterator = lst.iterator();
//iterator.hasNext()如果存在元素的话返回true
while(iterator.hasNext()) {
//iterator.next()返回迭代的下一个元素
System.out.println(iterator.next());
}
}
}
画画
package lesson2;
import com.sun.javafx.scene.paint.GradientUtils;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.lang.reflect.Array;
import java.security.cert.PolicyNode;
import java.util.ArrayList;
import java.util.Iterator;
public class TestMouseListener {
public static void main(String[] args) {
new MyFrameMouse("画图");
}
}
//鼠标类
class MyFrameMouse extends Frame {
//画画需要画笔 监听鼠标现在的位置
//需要集合来存储点
ArrayList points;
public MyFrameMouse(String title) {
super(title);
setBounds(200, 200, 400, 300);
//在鼠标点击的点
points = new ArrayList<>();
//鼠标监听器,正对这个窗口
this.addMouseListener(new MyMouseListener());
setVisible(true);
}
public void paint(Graphics g) {
//画画 监听鼠标的事件
Iterator iterator = points.iterator();
while (iterator.hasNext()) {
Point point = (Point) iterator.next();
g.setColor(Color.blue);
g.fillOval(point.x, point.y, 10, 10);
}
}
//添加一个点到界面上
public void addPaint(Point point) {
points.add(point);
}
//适配器模式
private class MyMouseListener extends MouseAdapter {
//鼠标按下,弹起,按住不放
public void mousePressed(MouseEvent e) {
MyFrameMouse frame = (MyFrameMouse) e.getSource();
//这里点击的时候,就会在界面上产生一个点
//这个点就是鼠标的点
frame.addPaint(new Point(e.getX(), e.getY()));
//每次点击鼠标需要重新画一遍
frame.repaint();//刷新
}
}
}