java IO流

本文探讨了商品管理后台系统的模块分离开发,使用JavaBean封装商品数据,通过接口实现增删改查功能,利用HashMap处理商品编号去重。还介绍了文件I/O操作,如创建、删除和重命名文件,以及文件夹的管理。
摘要由CSDN通过智能技术生成

商品管理的后台系统

面向接口

  1. 模块分离开发,相当于把商品和管理功能分开,商品作为java bean,这个类起到封装(构造函数,getter,setter,toString)
  2. 确定接口(方法) ,一般在后台系统中增删改查.
  3. 确定abstract类-à单个模块,抽象类中某些方法不能在当前功能模块中实现.(如果项目客户需求还没有具体,这个方法就是抽象)
  4. 确定类,实现接口,把方法的逻辑完成.一般查询的方法比较多的.
  5. 注意:
  1. 商品模块,ArrayList 把商品放在ArrayList,商品模块是有商品编号的去重问题. 采用HashMap(线性+链表+红黑树)
  2. 商品编号的制定规则, 存储的是HashMap,返回数据是ArrayList, 删除或者修改时, remove方法传参意义不一定,  一个是key, 一个是索引, 把index加入到 key中.
  3. Size仿字符串源码,记录char[]数组长度的值 ,size-1就是一个元素,本身size就是元素的个数.
  4. 采用HashMap返回键对应的值的集合,也就是所有商品,返回类型是Collection.

 思想: 规避在程序中不断进行for循环.(数据量多用迭代器)

主类:整合

系统, 把功能用菜单的方式,由用户去选择

 条件语句,后台字节码

If -----à goto

Switch 开始hashCode,后面equals

用条件,官方源码把条件转化成数组,数组执行函数功能,数组是存储数据的.

 实例化的类不想总实例化,用静态,必须接口中的静态必须实现,再则静态方法中的全局变量是静态变量,静态类不需要面向接口.工具类需要在内存中,工具类是程序中用到算法.

While(true)中出现nextInt,这里进行try...catch并且跟上nextInt输入, 执行速度无法控制.

While(true)中出现try----catch,很难控制菜单循环问题,try后面的内容就相当于函数一样,理解自己的保护.

Next()接收字符串很稳定,付出代码需要用数组来存储数据,进行转化,转化效率低,字符串底层就是字符数组. 只接收字符数组第一位.char在内存中只用一个字节存储.

优化:

  1. 避免循环(自己函数中用自己函数,递归)
  2. 变量应用存储字节最小。
  3. 条件用数组解决。

批量:

来自于文件

快捷方法:

文件

常用的文件就是没有格式的文件,这个文件只是文件

图片文件

(带格式先不讨论)

Java提供了IO模块,这里实现很多类,类进行文件的操作

读文件/写数据/重命名/删除

1、手动导入io模块

2、文件操作都有错误产生,有文件不存在情况。IOException

File类中

File中不存在去操作文件内容,只操作文件

New File没有异常报错,只是给File在传入文件名。

对文件的操作可以从基本的增删改查去操作

增: 创建一个文件

createNewFile 创建新文件,这个文件是空文件

如果a.txt文件没有就创建一个新的空文件,

如果文件存在,并不覆盖,不处理 。

删除:

 delete方法删除文件

文件夹的相关操作

mkdir只能建立一层,af

mkdirs是建立多层

文件夹的删除还是delete,但是删除一层

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值