复习总结(6.17)

Object--顶级父类--java中的所有类都把Object作为超类
toString()--默认实现是打印对象的地址值
               --自动生成重写后的方法,打印的是对象的类型+属性值
hashCode()--返回当前对象的哈希码值,用于区分不同的对象
equals()---默认的是通过==比较,比较的是两个对象的地址值
             -- 自动生成重写后的方法,比较的两个对象的类型+所有属性值
String是字符串类型,数据使用“”包裹
1.String底层维护了一个char[]
2.两种创建方式:
方式一:char[] value={'a','b','c'}; String s=new String(value);
方式二:String s="abc";
    --有高效的效果,
================================================
String
1.性能测试
   使用String的+进行拼接,效率比较低
   使用工具类StringBuffer的append(),效率非常高
   使用工具类StringBuilder的append(), 效率非常高
================================================
包装类
1.对基本类型进行封装,提供一些其它的功能
2.基本类型与包装类型的对应类型(int Integer  char character)
3.Integer
   3.1)创建方式一:new Integer(5);  Integer.valueOf(5);--没有高效的效果
   3.2)创建方式二:Integer.valueOf(5);--有高效的效果,限制范围:(-128-127)
   TIPS:只有方式二的指定范围才有高效的效果,
在此范围内,数据只会存一次,后续再存都是直接使用之前存过的数据
4.Double
  4.1)创建方式一:new Double(5.5);
  4.2)创建方式二:Double.value(5.5);
  TIPS:Double无论那种方式创建,都没有高效的效果
5.把字符串类型转成对应的包装类型,方便参与计算
   i1.parselent("600")+10.5-->610.5--i1是Integer类型的对象
   d1.parseDouble("2.2")+1--> 3.2  --d1是Double类型的对象
================================================
BigDecimal -- 浮点数运算不精确解决方案
1.创建工具类对象 
new BigDecimal(double参数)--有坑!!--还会出现不精确的问题
new BigDecimal(String参数)--注意需要把double转String,直接拼个“”即可
2.通过工具类对象进行四则运算
bd1.add加/subtract减/mutiply乘/divide除
TIPS:注意除法可能会出现除不尽的现象,会报错,注意设置保留位数和舍入方式
================================================
字节流:针对二进制文件
字符流:针对文本文件,读写容易出现乱码的现象,在读写时,最好指定编码集为UTF-8
在结合对应类型的输入和输出方向,常用的流有:输入流和输出流
================================================
流:Steam
1.流是单方向的
2.输入流只能输入in(读取),输出流只能输出out(写出)。
3.流只能从头到尾的顺序读取一次
好马不吃回头草
TIPS:方向一定要对,注意可以从程序的角度考虑
******************************************************************************
流的分类:
    1.根据操作数据单位的不同:字节流(二进制,所有文件)和字符流(文本文件)
    2.根据流的方向的不同:输入流和输出流
    3.组合情况:字节输入流、字节输出流、字符输入流、字符输出流
******************************************************************************
File文件流
     创建File对象 new File(String pathname)
     Pathname是路径,路径可以是:文件路径/文件夹路径/不存在的文件路径
     File常用方法速查表复写
================================================
String
1.字符串类型,格式:“”
2.底层结构:维护的事一个char[]
3.创建方式:
    char value=("a","b","c");String s=new String(value);
    String s="abc";【此种有高效的效果,数据会存入堆中常量池】
4.性能测试
使用String的+号拼接,性能比较低
使用的是工具类StringBuffer/StringBuilder的append()提高性能
================================================
正则表达式
作用:我们来定义一些规则,用来校验制定数据是否符合这个规则
1.定义一个正则表达式String regex = "我们定义的一些要匹配的规则";
2.判断数据是否符合这个表达式:input.matches(regex)--input代指用户输入的数据
================================================
包装类
1.把基本类型进行“包装类”,提供一些其它的功能
2.基本类型与包装类型的对应关系
byte-Byte short-Short int-Integer long-Lang
float-Float double-Double boolean-Boolean char-Charater
3.包装类型未被赋值时,值为null
4.Integer
  4.1)创建方式一:new Integer(5);
  4.2)创建方式二:Integer.valueOf(5);【有高效的效果,注意范围-128~127】
  TIPS:高效的效果是指:在此范围内,数据只存一次,再存的时候直接使用之前
  存过的数据
5.Double
  5.1)创建方式一:new Double(3.4);
  5.2)创建方式二:Double.valueOf(3.4);
  TIPS:无论是哪种创建方式,Double均没有高效的效果
6.自动装箱与自动拆箱
   装箱方向:基本类型->包装类型
   拆箱方向:包装类型->基本类型
7.包装类中String的转换
   parseInt(String s)-->Integer包装类提供的方法:把String类型的数据转换为int类型
   ParseDouble(String s)->Double包装类提供的方法:把String类型的数据转成double类型
================================================
BigDecimal--用于解决浮点数运算不精确的现象。
1.创建对象
   new BigDecimal(double参数)--有坑!还是会出现不精确的问题
   new BigDecimal(String 参数)--double快速转String,拼个“”就可以
2.通过此对象的API进行基本四则运算
   bd1.add(bd2);加法
   bd1.subtract(bd2);减法
   bd1.mutiply(bd2);乘法
   bd1.divide(bd2,保留位数,舍入方式);除法
   TIPS:除法在除不尽时会报错异常,所以需要设置保留位数和舍入方式【四舍五入】
================================================
流 Stream
1.流失单方向的
2.输入流只能用来输入(读取),输出流只能用来输出
3.流只能从头到尾顺序读取
TIPS:如何判断流的方向?要站在程序的角度来考虑
*******************************************************************************
流的分类:
    1.分类维度1:按照流的方向:输入流和输出流
    2.分类维度2:按照操作单位的不同:字符流 字节流
    3.组合情况:字节输入流 字节输出流 字符输入流 字符输出流
*******************************************************************************
File文件类
     1.创建对象 new File(String pathName)
     2.pathName是路径,路径可以为:文件路径 文件夹路径 不存在的路径
     3.File常用方法复写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值