• Java基础(6)Java数据类型扩展


    1.整数类型扩展

    我们先来说下进制,进制就是进位制,是人们规定的一种进位方法。 对于任何一种进制—X进制,就表示某一位置上的数运算时是逢X进一位,二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。Java进制分为二进制,八进制,十进制,十六进制, 但是计算机只能处理2进制的数据和指令。

    进制码

    在计算机内,有符号数有3种表示法:原码、反码和补码。所有数据的运算都是采用补码进行的。

    原码:就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。

    反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。

    补码:正数的补码与其原码相同;负数的补码是在其反码的末位加1。

    ## 二进制
    由0,1组成,以0b开头。(b大小写都行)
    
    ## 八进制
    由0,1,…,7组成,以0开头。
    
    ## 十进制
    由0,1,…,9组成,整数默认为十进制。
    
    ## 十六进制
    由0,1,…,9,a,b,c,d,e,f组成(大小写均可),以0x开头。
    

    进制相互转换的方法

    十进制转成十六进制:   
    Integer.toHexString(int i)   
    十进制转成八进制   
    Integer.toOctalString(int i)   
    十进制转成二进制   
    Integer.toBinaryString(int i)   
    十六进制转成十进制   
    Integer.valueOf("FFFF",16).toString()   
    八进制转成十进制   
    Integer.valueOf("876",8).toString()   
    二进制转十进制   
    Integer.valueOf("0101",2).toString()   
    

    2. 浮点数扩展

    package com.joshua317;
    
    public class Main {
        public static void main(String[] args) {
            float f = 0.1f;
            double d = 1.0/10;
            System.out.println(f);
            System.out.println(d);
            System.out.println(f==d);//false
    
            float f1 = 23281818321831f;
            float f2 = f1+1;
            System.out.println(f1);
            System.out.println(f2);
            System.out.println(f1==f2); //true
        }
    }
    Java

    运行结果:

    0.1
    0.1
    false
    2.32818181E13
    2.32818181E13
    true
    

    3. 字符类型扩展

    package com.joshua317;
    
    public class Main {
        public static void main(String[] args) {
            //字符类型拓展
            char c1 = 'A';
            char c2 = '中';
            System.out.println(c1);
            System.out.println(c2);
            //强制转换,将字符类型转换为int类型;
            System.out.println((int)c1);
            //强制转换,将字符类型转换为int类型;
            System.out.println((int)c2);
            char c3='\u3988';
            System.out.println(c3);  //输出为a
        }
    }
    

    4. 布尔值扩展

    package com.joshua317;
    
    public class Main {
        public static void main(String[] args) {
            boolean flag = true;
            if (flag == true) {}
            if (flag){}
        }
    }
    Java

    5.转义字符

    public class Demo {
        public static void main(String[] args) {
          //转义字符
          // \t
          System.out.println("hello\world");
          // \n
          System.out.println("hello\nworld");
       }
    }
    Java
    符号字符含义
    \n 换行 (0x0a)
    \r 回车 (0x0d)
    \f 换页符(0x0c)
    \b 退格 (0x08)
    \0 空字符 (0x0)
    \s 空格 (0x20)
    \t 制表符
    " 双引号
    ' 单引号
    \ 反斜杠
    \ddd 八进制字符 (ddd)
    \uxxxx 16进制Unicode字符 (xxxx)

     

  • 相关阅读:
    主流NoSQL数据库评测之HBase
    Java Io原理及应用
    Facebook:HBase每月存储1350亿条信息
    Facebook为何选择云计算开源Hadoop
    ActiveMq配置解析
    主流NoSQL数据库评测之HandlerSocket
    软件类官方网站收藏
    Mongodb 更新失败解决方案
    主流NoSQL数据库全方位评测:MongoDB
    java为什么比c++要慢?以及如何提高java的效率
  • 原文地址:https://www.cnblogs.com/joshua317/p/15707977.html
Copyright © 2020-2023  润新知