Week12《java程序设计》第12次作业总结

Week12《java程序设计》第12次作业总结

1. 本周学习总结

1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容。

2. 面向系统综合设计-图书馆管理系统或购物车

使用流与文件改造你的图书馆管理系统或购物车。

2.1 简述如何使用流与文件改造你的系统。文件中数据的格式如何?

答:在注册登录模块中,在用户仓库中无法找到的用户,使用对象流和缓冲流查找对应文件是否存在,不存在就进行注册。从文件中读取影虎的登录信息。登录成功后,使用组合过滤流读取用户的书库信息。

2.2 简述系统中文件读写部分使用了流与文件相关的什么接口与类?为什么要用这些接口与类?

答:使用的类有ObjectInputStream,ObjectOutputStream,BufferedInputStream,BufferedOutputStream,FileInputStream, FileOutputStream。使用对象流ObjectInputStream和ObjectOutputStream将内存中的对象整个存储和还原。使用BufferedInputStream,BufferedOutputStream缓冲流提高读写的效率。FileInputStream, FileOutputStream打开文件和输出数据到文件中。

2.3 截图读写文件相关代码。关键行需要加注释。

答:

3. 代码量统计

3.1 统计本周完成的代码量

需要每周的代码统计情况融合到一张表中。

周次 总代码量 新增代码量 总文件数 新增文件数
1 0 0 0 0
2 0 0 0 0
3 0 0 0 0
4 0 0 0 0
5 739 739 16 16
6 1084 345 28 12
7 1180 96 30 2
8 1627 447 35 5
9 1986 359 44 9
10 2350 364 56 12
11 2534 184 61 5
12 2909 375 70 9
13 4135 1226 93 23

选做:4. 流与文件学习指导(底下的作业内容全部都是选做)

1. 字符流与文本文件:使用 PrintWriter(写),BufferedReader(读)

将Student对象(属性:int id, String name,int age,double grade)写入文件student.data、从文件读出显示。

1.1 生成的三个学生对象,使用PrintWriter的println方法写入student.txt,每行一个学生,学生的每个属性之间用|作为分隔。使用Scanner或者BufferedReader将student.txt的数据读出。(截图关键代码,出现学号)

答:

1.2 生成文件大小多少(使用右键文件属性查看)?分析该文件大小

答:文件大小为45个字节:

1.3 如果调用PrintWriter的println方法,但在后面不close。文件大小是多少?为什么?

答:0个字节,缓冲区的数据因为没有close而丢失。

2. 缓冲流

2.1 使用PrintWriter往文件里写入1千万行(随便什么内容都行),然后对比使用BufferedReader与使用Scanner从该文件中读取数据的速度(只读取,不输出),使用哪种方法快?截取测试源代码,出现学号。请详细分析原因?提示:可以使用junit4对比运行时间

答:使用BufferedReader的读取速度较快。

运行截图:

源代码:

2.2 将PrintWriter换成BufferedWriter,观察写入文件的速度是否有提升。记录两者的运行时间。试分析原因。

答:换成BufferedWriter以后,写入文件的速度有很大提升。直接从缓冲区写出数据,不必在等待缓冲区数据满的时间。

时间: 2024-10-17 06:20:04

Week12《java程序设计》第12次作业总结的相关文章

Week09《java程序设计》第九次作业总结

Week09<java程序设计>第九次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 答: 2. 书面作业 本次作业题集集合 1. List中指定元素的删除(题集题目) 1.1 实验总结.并回答:列举至少2种在List中删除元素的方法. 答: 实验总结:在public static List 删除元素的方法: 1. 从list的后面开始删除 for (int i =list.size()-1 ; i >-1; i--) { if(lis

201621123042《java程序设计》第十次作业

1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 1. 常用异常 结合题集题目7-1回答 1.1 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 答: ArrayIndexOutOfBoundsException非法索引访问数组 ClassCastException类型强制转换异常 NullPointerException空指针异常,所调用的对象为null NumberFormatExceptio

C语言程序设计第12次作业

一.本次课主要内容: 本章主要介绍指针相关的基础知识,本节课的主要如下 (1)通过示例"电码加密"引入字符指针与字符串处理.首先重点介绍字符指针和字符串的关联和区别,然后对常用字符串处理函数进行讲解,通过对比示例强调字符串运算的特殊性并分析原因. (2)通过例子"任意个整数求和"引入用指针实现内存动态分配.首先要分析为什么要进行内存的动态分配管理,然后介绍了动态内存分配的一般步骤和具体分配函数. 二.实验内容:(70分) 1. 输入一个字符串,把该字符串的前三个字母

201621123062《java程序设计》第九周作业总结

1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 思维导图1:(对集合部分做了一些改动和细化) 思维导图2:(泛型) 1.2 选做:收集你认为有用的代码片段 代码片段1:(取自PPT) 使用迭代器删除元素: List<String> list = new ArrayList<>(); list.add("a"); list.add("b"); list.add("c"); Itera

201621123042《java程序设计》第九次作业

1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 2. 书面作业 本次作业题集集合 1. List中指定元素的删除(题集题目) 1.1 实验总结.并回答:列举至少2种在List中删除元素的方法. 答:创建一个list,add输入元素,用list.get(i).equals(str)来判断是否要删除元素,注意该题删除元素的顺序需要从后面开始,如果从前面开始会因为i的变化导致漏掉一些元素. 删除List中元素的方法: (

week10《java程序设计》作业总结

week10<java程序设计>作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 答:: 2. 书面作业 本次PTA作业题集异常 1. 常用异常 结合题集题目7-1回答 1.1 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 答: 经常出现的异常有: 输入类型不符NumberFormatException,数组越界ArrayIndexOutOfBoundsException,空指针NullPointerException ,

week13《java程序设计》第13次作业总结

week13<java程序设计>第13次作业总结 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 答: 1.IP与端口:ip和域名相对应,可找到主机.IP+端口(TCP/IP协议中的端口)找到主机上的对应程序. web服务:80 ftp服务:21 Telnet服务:23 2.套接字通信:实现客户端和服务器端的连接. 对从Socket对象中获得的流操作,即可进行网络通信. 建立Socket对象,从Scoket对象上获取流. 对流操作进行网络通信 关闭

Week14《Java程序设计》第14次作业总结

Week14<Java程序设计>第14次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结与数据库相关内容. 2. 使用数据库技术改造你的系统 2.1 简述如何使用数据库技术改造你的系统.要建立什么表?截图你的表设计. 答:建立用户表,图书馆的图书表. 2.2 系统中使用到了JDBC中什么关键类? 答:使用到PreparedStatement,Connection,ResultSet,Statement. 2.3 截图数据库相关模块的关键代码.关键行需要加注释. 3

java程序设计作业 c.njupt.edu.cn java实现第二次作业

王利国的"Java语言程序设计第2次作业(2018)"详细 作业结果详细 总分:100 选择题得分:60 1. 表达式9==8&&3<7的运算结果是( ) A.1 B.0 C.true D.false 正确答案是: D 2. 表达式(3>2)?8:9的运算结果是( ) A.3 B.2 C.8 D.9 正确答案是: C 3. 表达式9-7<0||11>8的运算结果( ) A.true B.false C.1 D.0 正确答案是: A 4. 表达式4