java基础数据类型小知识

数据类型的扩展

银行业务的处理

说到数字,我们可能第一想到的是int 、浮点型数据类型

但是对于“钱”来说,用浮点型数据类型是不行的,Int更是不可以

为何浮点型不可以?

  • 因为浮点型float double是有限的,离散的,舍入误差的,大约,接近但是不相等
  • 我们在处理这些需要精度的数据的时候应该要避免使用浮点数
float f=0.1f;    //0.1
double d=1.0/10;   //0.1
System.out.println(f==d);   //false
float d1=2212121454554f;
float d2=d1+1;
System.out.println(d1==d2)   //true

可见使用时浮点型进行比较是不精确的

那么,应该要什么数据处理银行业务?

用java数学工具类 BigDecimal

类型转换

int i=128;

byte b=(int)i;  //由高到低   强制转换
double b=i;     //由低到高   自动转换

原文地址:https://www.cnblogs.com/myblogswcz/p/12555372.html

时间: 2024-11-11 10:21:25

java基础数据类型小知识的相关文章

Java基础概念性的知识总结

属于个人的所学的知识总结,不是全面的 1.JDK.JRE和JVM三者的区别 01.JDK:(Java Development ToolKit)Java开发工具包,是整个Java的核心.包括了Java的运行环境.JRE.一堆Java工具和Java基础的类库. 02.JRE:(Java Runtime Envirnment)就是我们平常说的Java平台,所有的Java程序都要在JRE的环境下才能运行.包含了JVM,Java的核心类库,但是不包含开发工具--编译器.调试器. 03.JVM:(Java

java基础数据类型char

java基础类型 数据类型            大小       范围                                             默认值  byte(字节)      8         -128 - 127                                           0 shot(短整型)        16      -32768 - 32768                                         0 int

Java基础数据类型二进制转换

前言: 本文主要介绍java基础类型的二进制转换和二进制的基本概念. 二进制: 1,二进制是以0和1为码,逢2进1,比如3=11=1*2+1. 2,在计算机当中其它进制的算法基本基于2进制,因为计算机只认识0和1,比如16进制数则意味着一位16进制码由4位2进制码数表示. 3,在Java语言中byte代表最小计量单位,byte由8位2进制数组成. Java基本数据类型与表示范围(boolean忽略) 1,byte(整型):8位,short(整型):16位,char(字符型):16位,int(整型

Java 基础数据类型包装类的高频区间的数据缓存

一.Java的基础数据类型的包装类:Integer,Long,Double,Float,Boolean,Byte,Short,Character. 二.高频缓存区 其中Double和Float没有缓存,其他类型都有高频缓存区间.其高频缓存区间的缓存范围是:Boolean:使用静态final,就会返回静态值Byte:-128~127Short:-128~127Character:0~127Long:-128~127Integer:-128~127 如果所使用的包装类的值在这个缓存区间内,就会直接复

Java基础数据类型

第一类:逻辑型boolean boolean类型数据只允许取true或false,不可以0或非0的整数替代true和false,这点和C语言不同 第二类:文本型char char 型数据用来表示通常意义上"字符"(2字节)字符型常量的三种表现形式:   字符常量是用单引号(' ')括起来的单个字符,涵盖世界上所有书面语的字符.例如:char c1 = 'a';   char c2 = '中'; char c3 =  '9';   Java中还允许使用转义字符'\'来将其后的字符转变为特

Java基础——数据类型

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记. 一.数据类型(八种): 1.计算机的存储进位:位是最小的存储数据单位,以此类推,如图: 2.在java里我们可以使用 0b或者0x表示二进制和十六进 如:0xABC或0b01010001: 3.在java里面数据存储中高位是1 就是负数,高位是0 就是正数: 4.Java数据类型详解: 整数数值:int short:小于32767 byte:小于127 小数

[Java 基础]数据类型

基本类型和引用类型 Java中的数据类型有两类: l  基本类型(又叫内置数据类型,或理解为值类型) l  引用类型 基本类型和引用类型的区别 1.  从概念方面来说 基本类型:变量名指向具体的数值 引用类型:变量名指向存数据对象的内存地址 2.  从内存构建方面来说 基本类型:变量在声明之后java就会立刻分配给他内存空间 引用类型:它以特殊的方式(类似C指针)指向对象实体(具体的值),这类变量声明时不会分配内存,只是存储了一个内存地址. 3.  从使用方面来说 基本类型:使用时需要赋具体值,

java 基础数据类型

分为四大类 8种基本形态和一个字符串 1.整数型: 由小到大: byte 范围-128~127  为2的8次方 short     为2的16次方 Int    为2的32次方 long 为2的64次方 2.浮点型: 为Float; double 3.布尔型: boolean 只有两个值  ture  false 4. 字符型 char 另外还有一种字符串  不属于8种基础类型: String; 另外  基础类型的定义不能为空: 类型转换循序  又大到小 表示: double  float lo

Java代理的小知识

这篇博客主要是看了一位大牛的博客所写的,该大牛写的是数据库连接池的实现,看了他的代码,顿时觉得很牛牛.所以在这里我也记录下我自己的demo,虽然不提倡重复造轮子,但是很多时候我们在重复造轮子的过程中才会有技术的提高,所以在这里我就重复造下轮子吧 这篇博客主要写的是关于Java动态代理的一个demo 情景如下: 在LOL游戏中,有个现象是代练的问题,实际游戏账号者会请代练,而这个代练在这里就是代理,帮实际游戏账号者进行帮打晋级赛的活动 UML图我就不画了,目前对这方面的知识还没去学,打算过段时间再