栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java 基本数据类型介绍

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java 基本数据类型介绍

1. 特殊说明:

1.1默认的浮点直接量为double型,如果要表示float类型的直接量,需要加"f"或者"F" 后缀。
例如:float f1 = 3.14 会有编译错误,应该写成3.14f 或者3.14F
1.2 double型再运算时会出现舍入误差
1/2--------------------0.5
1/3-------------------0.333333333
2/3-------------------0.666666666
我们日常使用的都是十进制,例如上面的1/2和2/3 是无法用十进制精确表示的
计算机使用的是2进制,同样有些数使用2进制是不能够精确表示的,例如2进制中无法精确表示1/10,通过代码测试如下:

public class Hello {
    public static void main(String[] args) {
        double money = 3.0;
        double price = 2.9;
        System.out.println(money-price);

    }
}

执行main 方法,你会发现输出的结果是:0.10000000000000009,java中成这种现象为"舍入误差",如果需要精确的运算可以考虑放弃double或者float而采用BigDecimal类来实现

BigDecimal b1 = new BigDecimal("3.0");
BigDecimal b2 = new BigDecimal("2.9");
System.out.println(b1.subtract(b2).doubleValue());

在运算过程中BigDecimal构造中必须使用字符串,如果使用double类型同样还是会有舍入误差出现

  1. 常用数据类型介绍
    2.1int介绍:
    2.1.1 int 表示整形,4个字节,范围是-21个多亿-21个多亿
    int a = 250;//250为整数直接量,默认为int型
    int b = 10000000000;//编译错误10000000000默认为int型,但是超范围了
    2.1.2两个整数相除,结果还是整数,小数位无条件舍弃
System.out.println(5/2);//输出结果2
System.out.println(2/5);//输出结果0

2.1.3运算时超出范围会发生溢出,溢出是需要避免的
2.2long :长整形,8个字节,范围很大很大
2.2.1长整形直接量为在数字后面加l或L
2.2.2算数运算时又可能超范围,建议在第一个数字后加l或者L,例如 long l = 100000000000L30010000

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/821138.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号