美文网首页
2019-04-14 jave核心代码看书笔记(二)

2019-04-14 jave核心代码看书笔记(二)

作者: 张开翔 | 来源:发表于2019-04-15 00:45 被阅读0次

    第三章:Java的基本程序设计结构

    一,数据类型
    1.整形
    int 4字节
    short 2字节
    long 8字节
    byte 1字节
    注意:①长整型后缀有一个l或者L(如4000000000L),
       ②十六进制有一个前缀)0X或者0x,如0xCAFE
       ③Java7开始,加上前缀0B或者0b,表示二进制,如0b1001表示9
    2.浮点类型
      float  4字节(有效位数为6到7位),一般情况下,有一个后缀F或者f
      double 8字节(有效位数为15位)
    注意:①浮点数值不适用于无法接受舍入误差的金融计算中,如(2.0-1.1),将打印出0.89999999999999999999999,而不是0.9因为浮点型采用二进制系统计算,无法精到分数的1/10,分式的分母只能是2的倍数(二进制所限),二进制小数只能够表示能够用1/(2^n)的和的任意组合(详解:https://www.cnblogs.com/scecit/p/5276943.html),就像十进制无法精确的表示分数的1/3一样。故使用BigDecimal

    3.char类型
    用char类型原本用于表示单个字符,现在有些Unicode的字符,需要两个char值进行表示,char类型的值可以用16进制表示,范围\u0000到\Uffff,
    如 转义序列 : \b 名称:退格 UniCode:\u0008
    注意:Unicode 转义序列会在解析代码之前得到处理
    理解unicode:unicode之前,有了很多不同标准(如ASCII,iso 8859-1等),产生了两个问题①不同编码对应的不同的字母②采用大字符集的语言其编码长度可能不一致。unicode就是为了解决这个问题,Java采用了16位的unicode,字符超过(65536个)。
    码点:编码表中某个字符串对应的代码值,如U+0041,表示拉丁字母的A的码点。
    Unicode的码点可以可以分为17个代码级别,第一代码级别为多语言代码级别,utf-16表示不同长度的的编码去表示所有的Unicode值,在基本的多语言级别中,字符有16位表示,通常称为代码单元,char类型是描述UTF-16的一个代码单元
    在Java中,建议不要使用char类型,而是用String类类型表示

    二,运算法
    注:整数除0会产生一个异常,浮点数除以零,将会得到无穷大或者NaN
    三. 字符串
    从概念上讲,所谓的字符串就是一组Unicode字符序列。
    例如,字符串”Java”——>字符’J’, ’a’, ’v’, ’a’ ,String类就是每个用双引号括起来的字符串都是String类的一个实例
    不可变字符串:不可变性体现在:String类的对象不能变化,而不是对象变量。String类型的对象变量可以引用不同的String对象。
    为什么Java字符串不可变:字符串常量共享机制,译器实现了字符串常量共享。字符串常量存放在常量池中,字符串变量指向常量池中对应的位置。如果复制了一个字符串变量,那么原始字符串与复制字符串共享相同的字符。Java设计者认为共享带来的效率远胜于提取或拼接字符串所带来的小便利字符串相等性判断

    检测字符串是否相等的两个方法:
    ①equals:比较两个字符串字面是否相等
    ②==:比较两个字符串内存地址是否相等

    相关文章

      网友评论

          本文标题:2019-04-14 jave核心代码看书笔记(二)

          本文链接:https://www.haomeiwen.com/subject/koyewqtx.html