Java基础--第二十二天

day22:

IO流整体:

标准输入输出流

转换流

InputStreamReader:字节流转字符流【数据走向】

OutputStreamWriter:字符流转字节流

打印流:

PrintStream

PrintWriter

可以直接对文件进行操作:

构造方法,是否同时接受File和String类型参数

FileReader  FileWriter  FileInputStream FileOutoutStream   PrintStream

PrintWriter:

构造方法

读取文件夹可能出现【拒绝访问】的异常

print()方法~

序列化:将对象像流一样的方式输入输出

ObjectInputStream -- Object readObject()

反序列化:将流对象还原成对象

ObjectOutputStream --  void writeObject(Object obj)

序列化ID值固定

A:类的对象想被序列化流操作,请序列化接口;

B:类实现了Serializable接口,解决黄线警告,固定化ID值。

编码问题:

编码表:字符及其对应的数值保存到一张表中

Properties:

表示属性的集合,可以从流中加载数据或把数据保存到流中,键值都是String

没有泛型,唯一一个可以和IO流结合使用的集合

String getProperties(String key):

String getProperties(String key,String defaultValue):

Object setProperties(String key,String value):

Set<String> stringPropertieyName():

系统属性

public static Properties getProperties():系统属性集

集合和IO流的结合:

list()方法:把集合中的数据按键值对的方式存储到文件中

load()方法: 把文件中的数据读取到集合中去【数据是键值对的模式--分隔符】

store()方法

时间: 2024-08-08 22:48:15

Java基础--第二十二天的相关文章

复习java基础第二天(异常处理)

一.常见的异常类型: public class TestException { public static void main(String[] args) { int i = 10; //数学异常: java.lang.ArithmeticException int j = i / 0; System.out.println(j); int [] scores = new int[]{1, 2, 4, 5}; //数组下标越界异常: java.lang.ArrayIndexOutOfBound

Java基础--第二十五天

TCP协议: Socket类 构造方法: TCP程序,必须先开服务器端 成员方法 服务器端程序: 创建服务器端Socket对象: 监听连接: 获取输入流,并显示: 释放资源 ServerSocket类 网络编程 网络编程+反馈 大融合[所有的Java基础融合为一个实例] 正则表达式: 符合某种规则的字符串,常用于校验 规则: Pattern类 A:字符 x:任意字符表示任意字符本身 \\:反斜线字符[转义字符] \r:回车 \n:换行 B:字符类 [abc]:表示a,b,c任意字符一次 [^ab

Java基础--第二十六天

正则表达式的规则字符: A:字符 x 字符 x,任意字符代表自己本身. \\ 反斜线字符 \r      回车 \n     换行 B:字符类 [abc] a.b 或 c,任意字符一次. [^abc] 任何字符,除了 a.b 或 c [a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内 [0-9] 任意的数字字符一次 C:预定义字符类 . 任意的字符 \d 数字:[0-9] \w 单词字符:[a-zA-Z_0-9] 单词字符:英文,数字,及_ D:边界匹配器 ^ 行的开头 $ 行的结

大数据Java基础第十二天作业

第一题:HashMap内部实现原理 HashMap存的是key => value 对的集合,每一对就是一个entry(条目),key和value存的都是对象的引用.key不能存重复的值,key的集合是keySet().value可以存重复的值,value的集合是values(). HashMap底层用的是hash(散列)算法,使的在map中查询值速度快效率高. HashMap判断对象是否相等,先判断hashcode是否相等,再判断equals值是否相等.对象相等代码:(this.hashcode

Java基础 - 第二天 Eclipse、运算符、Scanner类

第1章    Eclipse 1.1     Eclipse概述 l 概述 Eclipse是一个专门针对Java的集成开发工具(IDE),是IBM公司的产品.是免费.开源.由Java语言编写.所以,需要有JRE运行环境并配置好环境变量.它可以极大地提升我们的开发效率.可以自动编译,检查错误.在公司中,使用的就是Eclipse进行开发. l 特点描述 n 免费 n 纯Java语言编写 n 免安装 n 扩展性强 l 下载和安装 n 下载 http://eclipse.org/ n 安装 绿色版 解压

Java基础第二十九天总结——Java8新特性

目录: 一.Lambda表达式 二.函数式(Functional)接口 三.方法引用于构造器引用 四.强大的Stream API 五.Optional类 /*--------------------------分割线---------------------------*/ 一.Lambda表达式 速度更快 代码更少(增加了新的语法:Lambda 表达式) 强大的 Stream API 便于并行 最大化减少空指针异常:Optional Nashorn引擎,允许在JVM上运行JS应用 Lamdba

java基础第十二天_集合

1.描述HashMap内部实现原理. HashMap存的是K-V对,K是唯一的不重复的. 在存储方式上hashmap底层实现了一个散列算法,散列是一种基于关键词的搜索算法,提升了hashmap的查找速度.hashmap的查找机制是先用对象的hashcode得出一个地址用equals比较地址中的链表的各个元素,如果形同,取出对应的value值. 2.描述Hashset和HashMap的区别. HashSet:HashSet集合内部是通过HashMap进行实现的,使用的是hashMap中key部分.

java基础第二天

1.变量:存数的,代词,指代的就是它所存的那个数 1)变量的声明 int a://声明一个整形变量,名为a int b,c,d;//声明三个整形变量,名为b,c,d 2)命名 2.1)只能包含字母,数字,_和$符,并且不能以数字开头 2.2)严格区分大小写 2.3)不能使用关键字 2.4)可以中文命名,但不建议 建议“见名知意”驼峰命名法 3)初始化:第一次赋值 3.1)声明的同时初始化: int a = 250;//声明整形变量a并赋值为250 3.2)先声明后初始化: int a ://声明

Java基础--第二十三天

多线程:         多条执行单元 进程:正在运行的应用程序 线程:进程的执行单元,一条执行路径 迅雷下载,360清理 多线程程序实现: 线程依赖于进程存在,Thread类 子类继承 子类重写run方法 调用strart(),让线程启动,调用run()方法 同一个线程对象连续两次启动,报错:表示该线程状态有问题 getName()方法:标志不同线程,获取线程名称 setName():更改线程名字 线程随机性: 程序执行,抢占CPU资源,CPU在多个程序间切换. 第二种实现: 创建类,实现Ru