Java中的基本数据类型和基本数据类型之间的转换
在Java中有8中基本数据类型,分别为:
整型: byte、short、int、long
浮点型:float、double
布尔型:boolean
字符型:char.
byte: 8位, 封装类:Byte
1byte = 8bit; -128~127之间所有的整数
"位"是byte,"字节"是bit
2个字节表示一个字符。
声明举例:byte a = 1;
short: 16位,短整型,封装类Short,范围在(-2^15) ~ (2^15)-1 之间
short 2byte = 16bit
声明举例:short a = 1;
int : 32位,整型,封装类Integer ,范围在(-2^31) ~ (2^31)-1 之间
int 4byte = 32bit
默认整型直接量为int
声明举例:int a = 1;
long: 64位,长整型,封装类Long,范围在(-2^63) ~ (2^63)-1 之间
ling 8byte = 64bit
声明举例:long a = 1L;或者 long a = 1l;
float: 单精度浮点型,封装类Float,
float 4byte = 4*8bit = 32bit 32位
声明举例:float a = 1.1f;或者float a = 1.1F;
double:双精度浮点型,封装类Double
double 8byte = 8*8bit = 64bit 64位
默认浮点型直接量为double
声明举例:double a = 1.1;
char: 字符类型,封装类Character
Java中采用unicode编码
char类型占用两个字节,
java中的字符类型用单引号声明
声明举例:char a = 'a';
char a = 97; //ascii中97对应的字符为a
char a = '中';
char a = '\u987f';
boolean:布尔型,封装类Boolean
只能存储 true ,false
------------------------------------------------------------------------------------------------
数据类型之间的转换:
自动类型转换:byte --> short --> int --> long --> float --> double
char-----^
小的类型可以自动转换成大的类型
例如:double a = 1; //会自动转换成1.0
强制类型转换:大的类型转换成小的类型,会出现精度损失或者溢出
例如:double a = 1.0;
float a1 = (float)a;
-----------------------------------------------------------------------------------------------------
整型直接量可以直接赋值给byte,short,char,只要不超过其范围就可以
byte,short,char参与运算时,会先统一转换成int类型,然后再运算
整数之间相除结果还是整数,小数舍去
不同数据类型之间运算,会先转换成大的数据类型,然后再运算
double计算时会出现舍入差,2进制系统中无法精确的表示1/10,就好像十进制中无法精确表示1/3一 样。如果需要精确计算,建议使用BigDecimal
Java中的基本数据类型和基本数据类型之间的转换的更多相关文章
- java中的字符,字符串,数字之间的转换
string 和int之间的转换 string转换成int :Integer.valueOf("12") int转换成string : String.valueOf(12) ch ...
- java中的字符、字符串及数字之间的转换(转)
一.string 和int之间的转换 1.string转换成int :Integer.valueOf("12") 2.int转换成string : String.valueOf( ...
- Java中构造函数传参数在基本数据类型和引用类型之间的区别
Java中构造函数传参数在基本数据类型和引用类型的区别 如果构造函数中穿的参数为基本数据类型,如果在函数中没有返回值,在调用的时候不会发生改变:而如果是引用类型,改变的是存储的位置,所有不管有没有返回 ...
- java中一个数组不能放不同数据类型的值
在java中,数组不能放不同数据类型的值. 方法一: 多态 定义数组类型的时候定义为父类,而存进数组为父类的子类 public class test2 { public static void mai ...
- Java中JDK、JRE和JVM三者之间有什么区别和联系?Java基础!
任何语言或软件都需要一个运行环境.正如人想生活在空气中,鱼想生活在水中一样,喜荫植物不能暴露在阳光下,任何物体个体的存在都离不开其所需的环境,编程语言也是一样的. 接下来就详细描述一下Java中JDK ...
- DB2中字符、数字和日期类型之间的转换
DB2中字符.数字和日期类型之间的转换 一般我们在使用DB2或Oracle的过程中,经常会在数字<->字符<->日期三种类 型之间做转换,那么在DB2和Oracle中,他们分别 ...
- 【转】Notepad++中Windows,Unix,Mac三种格式之间的转换
原文网址:http://www.crifan.com/files/doc/docbook/rec_soft_npp/release/htmls/npp_func_windows_unix_mac.ht ...
- java中的输入流(Scanner),数据类型,运算符,switch,数组的用法
//java中创建包用package相当于C#的命名空间namespace,java中导入包用import相当于C#中引入命名空间usingimport java.util.*;//导入包,*代表导入 ...
- java中的修饰符和基本数据类型
1.java中的修饰符 java中的修饰符主要是用来对类资源进行一个权限控制,上面表格表现的很清晰,无需多言. 2.java中的基本数据类型 java中的数据类型分为引用类型和基本类型.基本数据类型有 ...
- Java中byte与16进制字符串的互相转换
* Convert byte[] to hex string.这里我们可以将byte转换成int,然后利用Integer.toHexString(int)来转换成16进制字符串. * @param s ...
随机推荐
- JavaScript正则表达式检验与递归函数实际应用
JS递归函数(菲波那切数列) 实例解析: 一组数字:0 1 1 2 3 5 8 13 0 1 2 3 4 5 6 7 sl(0)=0; sl ...
- iOS组件化方案的几种实现
最近研究了一下项目的组件化,把casa.bang.limboy的有关组件化的博客看了一遍,学到了不少东西,对目前业界的组件化方案有了一定的了解.这些高质量的博客大致讨论了组件化的三种方案:url-bl ...
- koa-router源码分析
koa-router源码地址是 koa-router 当前解读版本为7.2.1 关系图 代码结构图 执行流程图 关系对应图 Router方法和属性浅析 methods.forEach 注册注册路由的方 ...
- ASP.NET Core 使用Cookie验证身份
ASP.NET Core 1.x提供了通过Cookie 中间件将用户主体序列化为一个加密的Cookie,然后在后续请求中验证Cookie并重新创建主体,并将其分配给HttpContext.User属性 ...
- django服务器正常打开,本地localhost能连上,其他计算机却连不上
最近在学习Django,在搭建好django并且启动服务器后,遇到了麻烦. 问题现象: django服务器正常打开,本地localhost能连上,其他计算机却连不上 问题原因(可能存在原因): 这里的 ...
- 【3D数学基础】三维空间折射向量计算
问题:在三维空间中,已知折射率 e .入射角 L 和法线 N. 要求:计算出折射向量 T. 其中: L. N 和 T 都为单位向量. 如图片所示,下面所有的公式都看着这张图片来求解的: 首先,我们必须 ...
- JAVA 验证码生成(转)
最近做了一下验证码的功能,网上找了一篇还不错,引用下:http://blog.csdn.net/ruixue0117/article/details/22829557 这篇文章非常好,但是web和js ...
- 【Eclipse】给web项目打war包
项目右键->export->war file -> Destination ->finish 第二步 保存
- canvas自适应圆形时钟绘制
前面的话 前面介绍过canvas粒子时钟的绘制,本文将详细介绍canvas自适应圆形时钟绘制 效果演示 最终自适应圆形时钟的效果如下所示 功能分析 下面来分析一下该圆形时钟的功能 [1]静态背景 对于 ...
- innerHTML innerText的使用和区别
document对象中有innerHTML.innerText这两个属性,都是获取document对象文本内容,但使用起来还是有区别的: 1) innerHTML设置或获取标签所包含的HTML+文本信 ...