java 基本类型与包装类
茅坤宝骏氹
语言:Java、C/C++、C#、Python、Linux Shell。
框架:Spring、Spring MVC、Spring Boot、Spring Cloud、Hibernate、Mybatis、Freemarker、Velocity。
前端:HTML5、CSS3、JavaScript、Bootstrap、JQuery、Vue、React。
数据库:oracle、mysql、MongoDB、HBase。
缓存:Memcache、Redis。
消息队列:kafka。
大数据:Hadoop、Hive、Sqoop、Flume、Spark、Strom、OpenTSDB、Druid。
展开
-
java之包装类与BigInteger、BigDecimal
一、包装类(1)包装类与原类型Integer int 的包装类 Boolean boolean 的包装类 Character char的包装类 Double double的包装类 Float float 的包装类 Byte ...原创 2017-11-26 17:53:24 · 799 阅读 · 0 评论 -
Java中的基本数据类型转换(自动、强制、提升)
转载自 Java中的基本数据类型转换(自动、强制、提升) 说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示。重新温故了下原始数据类型,现在来解释下它们之间的转换关系。自动类型转换自动类型转换是指:数字表示范围小的数据类型可以自动转换成范围大的数据类型。如:long l = 100;int ...转载 2018-05-26 08:38:58 · 1994 阅读 · 0 评论 -
BigDecimal丢失精度的坑
问题:new BigDecimal(double d)的数值居然还是不精确的double d = 0.09;BigDecimal bigDecimal=new BigDecimal(d);System.out.println(bigDecimal);System.out.println(d);输出结果:0.089999999999999996669330926124530378...原创 2018-10-24 12:40:12 · 3921 阅读 · 1 评论 -
一文读懂什么是Java中的自动拆装箱
转载自 一文读懂什么是Java中的自动拆装箱本文主要介绍Java中的自动拆箱与自动装箱的有关知识。一、基本数据类型基本类型,或者叫做内置类型,是Java中不同于类(Class)的特殊类型。它们是我们编程中使用最频繁的类型。Java是一种强类型语言,第一次申明变量必须说明数据类型,第一次变量赋值称为变量的初始化。Java基本类型共有八种,基本类型可以分为三类:字符类型c...转载 2018-10-07 19:38:04 · 239 阅读 · 0 评论 -
深入浅出 Java 中的包装类
转载自 深入浅出 Java 中的包装类前阵子,我们分享了《Java中的基本数据类型转换》这篇文章,对许多粉丝还是有带来帮助的,今天讲一下 Java 包装类的的由来,及自动装箱、拆箱的概念和原理。什么是包装类型Java 设计当初就提供了 8 种 基本数据类型及对应的 8 种包装数据类型。我们知道 Java 是一种面向对象编程的高级语言,所以包装类型正是为了解决基本数据类型无法面向对象...转载 2018-10-13 20:29:47 · 163 阅读 · 0 评论 -
获取一个 Byte 的各个 Bit 值
转载自 获取一个 Byte 的各个 Bit 值1. bit:位 一个二进制数据0或1,是1bit;2. byte:字节 存储空间的基本计量单位,如:MySQL中定义 VARCHAR(45) 即是指 45个字节; 1 byte = 8 bit3. 一个英文字符占一个字节; 1 字母 = 1 byte = 8 bit4. 一个汉字占2个字节; 1 汉字 = 2 by...转载 2018-06-17 08:44:29 · 3356 阅读 · 0 评论 -
Java:对double值进行四舍五入,保留两位小数的几种方法
转载自 Java:对double值进行四舍五入,保留两位小数的几种方法1. 功能将程序中的double值精确到小数点后两位。可以四舍五入,也可以直接截断。比如:输入12345.6789,输出可以是12345.68也可以是12345.67。至于是否需要四舍五入,可以通过参数来决定(RoundingMode.UP/RoundingMode.DOWN等参数)。2. 实现代码package com.c...转载 2018-06-17 08:44:19 · 1503 阅读 · 0 评论 -
你真的了解Java中的三目运算符吗
转载自 你真的了解Java中的三目运算符吗三目运算符是我们经常在代码中使用的,a= (b==null?0:1);这样一行代码可以代替一个if-else,可以使代码变得清爽易读。但是,三目运算符也是有一定的语言规范的。在运用不恰当的时候会导致意想不到的问题。本文就介绍一个我自己曾经踩过的坑。一、三目运算符对于条件表达式b?x:y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果...转载 2018-05-23 09:15:50 · 1709 阅读 · 0 评论 -
金融系统中正确的金额计算及存储方式
转载自 金融系统中正确的金额计算及存储方式经典的精度丢失问题Java中的类型float、double用来做计算会有精度丢失问题,下面来看下面的示例。public static void main(String[] args) { test1(); test2();}private static void test1() { double totalAmount = 0...转载 2018-04-26 09:30:06 · 689 阅读 · 0 评论 -
为什么byte取值-128~127??
转载自 为什么byte取值-128~127??java设计byte类型为1个字节,1个字节占8位,即8bit,这是常识。另外,计算机系统中是用补码来存储的,首位为0表示正数,首位为1表示负数,所以有以下结论:最大的补码用二进制表示为:01111111 = 127最小的补码用二进制表示为:10000000 = -128关于补码、原码、反码的计算原理可以百度。Byte的源码:/** * A const...转载 2018-05-02 09:32:42 · 301 阅读 · 0 评论 -
IntegerCache的妙用和陷阱
转载自 IntegerCache的妙用和陷阱考虑下面的小程序,你认为会输出为什么结果?public class Test { public static void main(String[] args) { Integer n1 = 123; Integer n2 = 123; Integer n3 = 128; ...转载 2018-05-03 09:42:08 · 4685 阅读 · 0 评论 -
你知道void和Void的区别吗
转载自 你知道void和Void的区别吗区别void用于无返回值的方法定义。VoidVoid是void的包装方法,和其他基础类型的包装方法不同是Void不能被实例化,Void还可用于一直返回null的方法或者返回null的泛型。代码示例...转载 2018-05-02 13:02:18 · 437 阅读 · 0 评论 -
java BigDecimal八种舍入模式
一、BigDecimal介绍 java.math.BigDecimal 不可变的immutable、任意精度的有符号十进制数。BigDecimal 由任意精度的整数非标度值和32位的整数标度(scale)组成。 标度(scale)如果为零或正数,则标度是小数点后的位数。如果为负数,则将该数的非标度值乘以10的负scale次幂。 BigDecimal表示的数值是(unscaledValue ...原创 2017-11-26 17:58:40 · 695 阅读 · 1 评论 -
一分钟理解Java包装类型
转载自一分钟理解Java包装类型Java 一直标榜自己是一个纯粹的面向对象语言,自作聪明的为所有的值类型都提供相应的引用类型(不明白这两个概念,看之前的《一分钟理解传值和传引用》)比如:int 类型对应的有 Integer,前者是一个值,后者是一个引用。为了方便二者的转换又一个叫“自动拆装箱”的特性,把本来清晰的概念搞的乱七八糟。一个优秀的语言应该语法简单,语义单一、清晰。本文...转载 2019-05-04 12:40:38 · 183 阅读 · 0 评论