public Model() { file = new File("points.txt"); points = new ArrayList<Point>(); if(file.exists()) { try { Scanner s = new Scanner(file); while(s.hasNext()) { points.add(new Point(s.nextInt(),s.nextInt())); } s.close(); }catch(FileNotFoundException ex) { System.err.println(ex.getMessage()); System.exit(1); } } listeners = new ArrayList<ModelListener>(); } public void savaData() { try { PrintWriter out = new PrintWriter(file); for(Point p:points) { out.println((int)p.getX()+" "+(int)p.getY()); } out.close(); }catch(FileNotFoundException e) { System.err.println(e.getMessage()); System.exit(1); } }
时间: 2023-08-02 18:08:12 浏览: 138
java ArrayList.remove()的三种错误用法以及六种正确用法详解
这段代码是一个Java程序的Model类的构造函数和savaData方法。在构造函数中,首先定义了一个文件对象和一个点集合对象,然后判断文件是否存在,如果存在就读取文件中的点数据,并将其添加到点集合中。接着定义了一个监听器集合对象。在savaData方法中,首先定义一个PrintWriter对象,然后遍历点集合,将每个点的坐标写入文件中,并关闭PrintWriter对象。如果写入过程中出现异常,将会输出异常信息并退出程序。这段代码的作用是读取和保存点数据。
阅读全文