数据类型的转换

当数据类型不一样时,将会发生数据类型转换。

自动类型转换(隐式)
  1.特点 :代码不需要进行特殊处理,自动完成。
  2.规则 :数据范围从小到大。

//左边是long类型,右边是默认的int类型,左右不一样
//将右边的int常量,交给左侧的long变量进行存储
//int--> long ,符合数据范围从小到大的要求
long num1 = 100;
System.out.println(num1); double num2 = 2.5F;
System.out.println(num2)

强制类型转换(显式)

  1.特点 :代码需要进行特殊处理,不能自动完成。
  2.格式 :范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据;

//左边是int类型,右边是long类型,不一样
//long --> int,不是从小到大
//不能发生自动类型转换
//范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据;
int num1 = (int) 100L;
System.out.println(num1)// int num2 = (int)777777777777L;
System.out.println(num2);// int num3 = (int)3.77;
System.out.println(num3);//3 所有小数被舍弃 char zifu = 'A';
System.out.println(zifu + 1);//66 这里的A被当作65处理

注意事项:
1.强制类型转换一般不推荐使用,因为有可能发生精度损失,数据溢出。
2.byte/short/char这三种类型都可以发生数学运算,例加法“+”
3.byte/short/char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算。
4.Boolean类型不能发生数据类型转换

数字和字符的对照关系表(编码表)

ASCII码表:American Standard Code for Information Interchange,美国信息交换标准代码。
Unicode码表:万国码。也是数字和符号的对照关系,开头0-127部分和ASCII一样,但是从128开始包含有更多字符。

48 --- ’0‘
65 --- ’A‘
97 --- ’a'

Java学习:数据类型转换注意事项的更多相关文章

  1. java中数据类型转换注意事项

    1.byte.short.char这三种类型互相做数学运算时都会先提升为int类型后再做运算 char a = 'A'; short b = 1; int num = a + b;//a和b在做运算前 ...

  2. Java中数据类型转换&基本类型变量和对象型变量

    1.Java的数据类型分为三大类 布尔型,字符型和数值型 其中数值型又分为整型和浮点型 2.Java的变量类型 布尔型 boolean 字符型 char 整型    byte,short,int,lo ...

  3. java常用数据类型转换

    在Java开发过程中经常会涉及到数据类型的转换问题,比如数字型转字符型,字符型转日期型,字符串转数组等等,以及其他类型的强制转换等.经常出现,所以有必要总结一下. 1.如何将字串 String 转换成 ...

  4. Java基础知识强化22:Java中数据类型转换

    数据类型转换: (1). 自动转换 低级变量可以直接转换为高级变量,这叫自动类型转换.比如: byte b: int b:  long b:  float b:   double  b: 上面的语句可 ...

  5. Java中数据类型转换大全(个人总结)

    一.字符串转换为其他类型 1.将字符串转化为int型 (1)方法一 int i = Integer.parseInt(String str); (2)方法二 int i = Integer.value ...

  6. Java基础-数据类型转换

     1).简单类型数据间的转换,有两种方式:自动转换和强制转换,通常发生在表达式中或方法的参数传递时.  自动转换 当一个较"小"数据与一个较"大"的数据一起运算 ...

  7. Java中数据类型转换问题

    boolean类型不可以转换为替他的数据类型. Java中byte(8位).short(16位).char三种类型的优先级是相同的,相同优先级之间是不能进行自动转换的(如果相互转换的话,必须强制类型转 ...

  8. java 基本--数据类型转换--001

    小可转大,大转小可能会损失精度(编译出错,需要强制转换)A: byte,short,char -> int -> long -> float ->doubleB: byte,s ...

  9. Java高级数据类型转换:包装类、String字符串、Date类等与其他类型转换

    1.包装类过渡类型转换 一般情况下,我们首先声明一个变量,然后生成一个对应的包装类,就可以利用包装类的各种方法进行类型转换了.例如: 当希望把float型转换为double型时: float f1=1 ...

随机推荐

  1. linux部署django项目流程(全)

    1.python3和python2共存配置 流程在下面网址中 https://www.cnblogs.com/vinic-xxm/p/11358894.html 2.安装依赖包 yum install ...

  2. MySQL Other--mysql_config_editor学习使用

    mysql_config_editor工具 为避免MySQL明文密码出现在脚本或命令中,从MySQL5.6开始提供了mysql_config_editor工具,可以将数据库连接信息进行加密并保存到用户 ...

  3. Spring通过配置类加载实体bean

    以下4个java类都在都一个包下: 1.定义接口 public interface AA { void play(); } 2.定义实体bean //组件注解,表明该类是一个组件 @Component ...

  4. Linux的DNS正向解析部署

    前面介绍了DNS的作用及其相关的结果.Linux服务之DNS介绍 下面开始有关DNS的服务部署.<DNS正向解析示例> 工具:虚拟机 centos7 配置:Linux   IP 192.1 ...

  5. Unity 渲染教程(一):矩阵

    转载:http://gad.qq.com/program/translateview/7181958 创建立方体网格.· 支持缩放.位移和旋转. · 使用变换矩阵. · 创建简单的相机投影. 这是关于 ...

  6. Android架构师吐槽腾讯王者荣耀的程序员,排位匹配算法怎么搞的,每次都输

    腾讯王者荣耀的开发来来来出来聊聊,真是日了狗了,多次离上王者还差两三颗星的时候队友就开始水的一塌糊涂,对面就牛逼的不行. 又连跪回去了,被对面把屎都打出来了,实在忍不住来吐槽,你们这个排位匹配算法到底 ...

  7. POJ 3155Hard Life(最大密度子图)

    论文出处:最小割模型在信息学竞赛终的应用 #include <iostream> #include <cstdio> #include <cstring> #inc ...

  8. Activiti6 查询由某人发起的流程请求 设置流程发起人

    发起流程时,配置activiti:initiator属性,并且在代码中: Authentication.setAuthenticatedUserId(userId); 其中,userId对应流程发起人 ...

  9. Word 2016中公式不能自动斜体的解决方法

    参考资料: 中文版 Office 数学公式默认不是斜体 为什么Word 2007中的公式编辑器字体不能自动倾斜 归纳总结 这个问题自Word 2007开始就存在,直至我目前用的Word 2016都没有 ...

  10. scrapy 改 scrapy-redis

    1.spider 修改 class CgysSpider(scrapy.Spider): name = 'clispider' start_urls = ['https://search.bilibi ...