首页 > 编程语言 > 详细

JavaSE基础-数据类型

时间:2021-03-14 00:10:36      阅读:28      评论:0      收藏:0      [点我收藏+]

Java中的数据类型

Java中的数据类型总共分为两种:基本数据类型引用类型

  1. 基本数据类型
    • 整数类型
      byte: 占1个字节
      short: 占2个字节
      int: 占4个字节
      long: 占8个字节
    • 浮点型
      float: 占4个字节
      double: 占8个字节
    • 字符型
      char: 占2个字节
    • 逻辑类型
      boolean: 占一位,值为true或者false
  2. 引用数据类型
    类,接口,数组等等。
  3. Java数据类型中的进制
    2进制的数据以0b开头,8进制数据以0开头,16进制数据以0x开头。
     public static void main(String[] args) {
     	int x1 = 0b10;
    	int x2 = 010;
    	int x3 = 0x10;
    	System.out.println("2进制x1="+x1);
    	System.out.println("8进制x2="+x2);
    	System.out.println("16进制x1="+x3);
    }
    //2进制x1=2,8进制x2=8,16进制x1=16
    
  4. 关于浮点型数据比较的问题
    先来看关于浮点型的两组比较
    float f1 = 0.1f;
        double f2 = 1.0/10;//false
        System.out.println(f1==f2);
        float f3 = 232321213121313f;
        float f4 = f3+1;
        System.out.println(f3==f4);//true
    
    之所以会出现这样的问题,原因是浮点型的数据是有限的,计算机不能精确的表示,结果是一个离散的有限值,所以要求;
    尽量不使用浮点型进行比较
  5. 类型转换
    由于Java是强类型语言,所以有的时候运算需要类型转换
    运算中,不同类型的数据先转为同一类型,然后再进行运算。
    从高类型到底类型需要进行强制类型转换
    从低类型转换到高类型会自动类型转换
    在高类型到低类型转换的时候,可能会发生内存溢出导致数据
     int i = 128;
        byte j = (byte) i;
        System.out.println(j);//结果为-128
    
    结果为-128是因为byte只占一个字节,范围在-128~127之间。
    注意点:
    • 不能对布尔值进行转换
    • 不能把对象类型转换为不相干的类型
    • 在把高容量转换到低容量的时候,强制转换
    • 转换的时候可能存在内存溢出,或者精度的问题。

JavaSE基础-数据类型

原文:https://www.cnblogs.com/greathccc/p/14529957.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!