数据类型转换
Posted nan-qiu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据类型转换相关的知识,希望对你有一定的参考价值。
1 package com.java.demo; 2 3 public class Demo_1 { 4 public static void main(String[] args){ 5 int i = 1; 6 byte b = 2; 7 //byte x = b + i; 会报错 8 //int类型和byte类型运算,结果是int类型 9 int c = b + i; 10 System.out.println(c); 11 } 12 }
1、自动类型转换
1、特点:代码不需要进行特殊处理,自动完成
2、规则:数据范围从小到大
转换规则
范围小的类型向范围大的类型提升,byte、short、char
运算时直接提升为int
1 byte、short、char --> int --> long --> float --> double
2、强制转换
特点:代码需要进行特殊的格式处理,不能自动完成;
格式:范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据;
一般不推荐使用,因为有可能发生精度损失、数据溢出;
byte/short/char这三种类型都可以发生数学运算。
例子:
1 int num = (int) 100L; 2 System.out.println(num);
注:
- 浮点转成整数,直接取消小数点,可能会造成数据损失精度
- int强制转成short砍掉两个字节,可能造成数据损失
1 //定义z为short范围内最大值 2 short z = 32767; 3 //运算后,强制转换,砍掉2个字节后会出现不确定的结果 4 z = (short)(z + 10); 5 System.out.println(z);
3、ASCII编码表
1 //字符类型变量 2 char w = ‘a‘; 3 int i1 = 1; 4 //字符类型和int类型计算 5 System.out.println(w + i1);//输出结果为98
- 编码表:就是将人类的文字和一个十进制数进行对应起来组成一张表格
- 将所有的英文字母,数字,符号都和十进制进行了对应,因此产生了世界上第一张编码表ASCII(American Standard Code for Information Interchange美国标准信息交换码)。
在char类型和int类型计算的过程中,char类型的字符线查询编码表,得到97,在和1求和,结果为98。char类型提升为了int类型
以上是关于数据类型转换的主要内容,如果未能解决你的问题,请参考以下文章
JS的数据类型判断函数数组对象结构处理日期转换函数,浏览器类型判断函数合集
sql 日期转换代码片段 - Dato,120,konvertere
HTML Bookmarklet模板:将任何JavaScript代码片段转换为Bookmarklet
结合两个代码片段?将用户输入的 Youtube url 转换为嵌入 url,然后将 iframe src 替换为转换后的 url