Java类型转换笔记

关于基本数据类型之间的互相转换:转换规则

  • 1.八种基本数据类型当中除布尔类型之外剩下的7中类型之间都可以互相转换

  • 2.小容量向大容量转换,称为自动类型转换,容量从小到大排序:
    byte < short < int < long < float < double
    char <
    注:
    任何浮点类型不管占用多少个字节,都比整数型容量大。
    char和short可表示的种类数量相同,当时char可以取更大的正整数。【char和short的容量大小是同级的】

  • 3.大容量转换成小容量,叫做强制类型转换,需要加强制类型转换符,程序才能编译通过,但是在运行阶段可能会损失精度,所以谨慎使用。

  • 4.当整数字面值没有超过byte,short,char的取值范围,可以赋值给byte,short,char类型的变量

  • 5.byte,short,char混合运算的时候,各自先转换成int类型再做运算。

  • 6.多种数据类型混合运算,先转换成容量最大的那种类型再做运算。
    注意通过:
    byte b = 3;可以编译通过,3没有超过byte类型取值范围

    int i=10;
    byte b =i/3;编译报错,编译器只检查语法,不会运算i / 3。

    public class DataTypeTest08{public static void main(String[] args){double dd = 10 / 3;//int类型的10和3计算后的结果是int类型的3,然后再转换成double的3.0System.out.println(dd);System.out.println("---------------------------------------");dd = 10.0 / 3;//int类型的3先转换成double类型在计算,多种数据类型数据运算时,全部转换成大容量的类型在计算System.out.println(dd);// 编译报错,因为1000已经超出范围了。//byte b1 = 1000;// 可以byte b2 = 20;//20虽然是int类型,但是20没有超过byte的取值范围// 可以short s = 1000;//1000没有超过short的取值范围// 可以int c = 1000;//1000没有超过int的取值范围// 可以long d = c;//小容量转换成大容量,属于自动类型转换// 编译报错//int e = d;//d属于long类型,大容量转换成小容量,属于强制类型转换,需要强制类型转换符// 可以int f = 10 / 3;//int类型的10和3计算后的结果是int类型的3,然后再转换成double的3.0// 可以long g = 10;//int类型的10转换long类型的g,属于自动类型转换// 编译报错//int h = g / 3;//编译报错,编译器只检查语法,不会运算i / 3。// 可以long m = g / 3;//g属于long类型,int类型的3先转成long类型在计算// 编译报错//byte x = (byte)g / 3;//分子先把byte类型的g强转换为byte,然后整个运算式全转换为int在计算,得到int结果,还需要强制转换// 可以short y = (short)(g / 3);//先把(g/3)转换成long,然后再强转为short类型// 可以short i = 10;//10没有超过short类型的取值范围,可以直接赋值// 可以byte j = 5;//5没有超过byte类型的取值范围,可以直接赋值// 编译报错//short k = i + j;//先把i和j转换成int类型计算,得到int类型的结果,最后还需要进行强转// 可以int n = i + j;//int转int,无需操作// 可以char cc = 'a';System.out.println(cc); // aSystem.out.println((byte)cc); // 97运算式强转成byte// cc 会先自动转换成int类型,再做运算int o = cc + 100;System.out.println(o); // 197}
    }
    

Java类型转换笔记相关推荐

  1. java学习笔记13--反射机制与动态代理

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note13.html,转载请注明源地址. Java的反射机制 在Java运行时环境中,对于任意 ...

  2. Java学习笔记二:数据类型

    Java学习笔记二:数据类型 1. 整型:没有小数部分,允许为负数,Java整型分4种:int short long byte 1.1 Int最为常用,一个Int类型变量在内存中占用4个字节,取值范围 ...

  3. Java开发笔记(三十三)字符包装类型

    正如整型int有对应的包装整型Integer那样,字符型char也有对应的包装字符型Character.初始化字符包装变量也有三种方式,分别是:直接用等号赋值.调用包装类型的valueOf方法.使用关 ...

  4. 圣思园java.doc_北京圣思园java课堂笔记.doc

    北京圣思园java课堂笔记.doc JAVASELesson11.类是一种抽象的概念,对象是类的一种具体表示形式,是具体的概念.先有类,然后由类来生成对象(Object).对象又叫做实例(Instan ...

  5. Java基础笔记(4w字长文警告)

    Java核心笔记 提示:点击右上角关注博主,收获共同话题 下面是我的个人学习Java的笔记,现在分享给广大友友: 文章目录 Java核心笔记 0.导论 标柱注释: 学习方法: 1 java概述 1.1 ...

  6. Java学习笔记Day02

    Java学习笔记Day02 一.细化Hello程序 1.详解代码 //公有的类,叫做Hello public class Hello{//主方法public static void main(Stri ...

  7. Java学习笔记之基础篇

    Java学习笔记之基础篇 目录 Java如何体现平台的无关性? 面向对象(OO)的理解 面向对象和面向过程编程的区别 面向对象三大特征 静态绑定和动态绑定(后期绑定) 延伸:类之间的关系 组合(聚合) ...

  8. 郑志远的java学习笔记

    郑志远的java学习笔记 郑志远    CCB 1         Java起源 略 2         Java语言概述 1.面向对象编程的3个原则:封装(encapsulation).继承(inh ...

  9. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

最新文章

  1. 【失败的尝试】C++中使用string进行switch判断
  2. Nagios+Cacti+Nconf配置
  3. Gradle of Android Example
  4. ASP.NET dropdownlist绑定数据却显示System.Data.DataRowView
  5. java经常会出现异常的是,“Java异常Exception”总结
  6. 第二节:如何正确使用WebApi和使用过程中的一些坑
  7. django-视图函数 00
  8. 从减少DNS查找来优化网站
  9. python中 if __name__ == ‘__main__‘
  10. 微课系列(8):Python中lambda表达式的变量作用域
  11. oracle离线文档查dbms_Oracle日志文件管理与查看
  12. MOS管防倒灌电路设计及其过程分析
  13. 【Ad Hoc】贰 AODV 协议详解
  14. ones,zeros,size用法总结
  15. DSN文件怎么用Proteus打开
  16. Python 五个知识点搞定作用域
  17. 向技术大牛进击!!——计算机编程进修动员大会
  18. FER基于卷积神经网络: 处理少量数据和训练样本订单FER with CNN:Coping with few data and the training sample order
  19. 瑞企体育系统源码,赛事直播系统,足球直播程序,体育赛事足球系统功能介绍
  20. 死囚试毒酒问题(改编)

热门文章

  1. Java break语句:跳出循环
  2. Cobalt Strike 插件CrossC2(小白教程)
  3. 第七章 马斯洛金字塔模型
  4. 计算机终端机 大型游戏,云电脑让各种终端玩转大型游戏
  5. java string 编码_java中GBK编码格式转成UTF8,用一段方法实现怎么做?
  6. 《知识英雄》后记:我是一名记者
  7. parameterType和@Param注解用法
  8. mysql DateDiff 时间差
  9. 51中断优先级及中断嵌套
  10. Kmeans 算法实例,入门必看!!!!