2.4.5-Java语言基础(类型提升&强制转换)

自动类型转换(也叫隐式类型转换)

强制类型转换(也叫显式类型转换)

类型转换的原理

什么时候要用强制类型转换?

表达式的 数据类型自动提升

?  所有的byte型、short型和char的值将被提升到int型。

?  如果一个操作数是long型,计算结果就是long型;

?  如果一个操作数是float型,计算结果就是float型;

?  如果一个操作数是double型,计算结果就是double型。

分析

?  System.out.println(‘a’) 与System.out.println(’a’+1) 的区别 。

自动类型提升

byte b = 3;

int x = 4;

x = x + b;//b会自动提升为int类型进行运算。

强制类型转换

byte b = 3;

b = b + 4;//报错

b = (byte)b+4;//强制 类型转换,强制将b+4的结果转换为byte类型,再赋值给b。

思考 :

byte b1=3,b2=4,b;

b=b1+b2;

b=3+4;

哪句是编译失败的呢?为什么呢?

2.4.5-Java语言基础(类型提升&强制转换)

时间: 2024-10-13 00:10:20

2.4.5-Java语言基础(类型提升&强制转换)的相关文章

Java学习总结(二)----Java语言基础

1.     Java语言基础 2.1 关键字 定义:被java语言赋予特殊含义的单词 特点:关键字中的字母都为小写 用于定义数据类型的关键字 class,interface,byte,short,int, long ,float,double,char,boolean,void 用于定义数据类型值的关键字 true,false,null 用于定义流程控制的关键字 If,else,switch,case,default, while,do,for,break,continue,return 用于

第二章 java语言基础

2.1 java语言基础组成 关键字 标识符 注释 常量和变量 运算符 语句 函数 数组 2.1.1 标识符 1. 组成:由英文字母.数字._和$ 2. 规则: 不能以数字开头 不能使用关键字 3. java的命名规范 包名:所有字母都小写.xxyyy 类名:所有单词的首字母大写.XxxYy 变量名和函数名:第一个单词首字母小写,之后的每个单词首字母都大写.xxYyyZz 常量名:所有字母都大写,多个单词用下划线连接.XXX_YY 2.1.2 常量和变量 1. 常量:不能改变的数值 分类: 整数

Java语言基础扫雷

一.数据类型 Java支持两种数据类型:基本类型和引用类型.基本类型有布尔(boolean)类型和数值类型,数值类型有整数类型(byte.short.char.int.long)和浮点数类型(float.double),其中char也称为字符类型,统称八大基本数据类型.byte型整数在内存中占8位,short型整数在内存中占16位,int型整数在内存中占32位,long型整数在内存中占64位,float型数值在内存中占32位,double型数值在内存中占64位.按取值范围从小到大排列为:byte

非专业码农 JAVA学习笔记 2 java语言基础

java语言基础 (一)程序构成 略 (二)数据类型变量和常量 1.数据类型(与c#差不多) 布尔bool 8位 字节byte 8   -128-127 字符char 16 短整型Short 16 Int 32 Long 64 Float 32 Double 64 2.标识符-变量常量方法对象和类的名字标记 字母数字 还有两个特殊符号_ 和$ 字母下划线或者美元符号开头 3.常量 4.变量 (三)表达式 1.赋值和强制类型转换 Tostring()弱转换 类型=(类型)变量:a=(int)b;a

[JAVA_开课吧资源]第一周 Java语言概述、Java语言基础

主题一 Java语言概述 » JDK介绍及其基本组件 Sun公司利用Java开发工具箱(Java Development Toolkit ,JDK)发布Java的各个版本.JDK由开发和测试Java程序的独立程序集组成,它们都从命令行调用. [请点击查看更多内容 转自51CTO.com] » 使用CMD开发运行Java程序 代码文件的拓展名必须为.java,并且文件名应该与类的类名完全相同.编译一个程序是指使用编译器将源代码翻译成java字节码.下面的命令用来编译源代码文件welcome.jav

day04<Java语言基础+>

Java语言基础(循环结构概述和for语句的格式及其使用) Java语言基础(循环结构for语句的练习之获取数据) Java语言基础(循环结构for语句的练习之求和思想) Java语言基础(循环结构for语句的练习之水仙花) Java语言基础(循环结构for语句的练习之统计思想) Java语言基础(循环结构while语句的格式和基本使用) Java语言基础(循环结构while语句的练习) Java语言基础(循环结构do...while语句的格式和基本使用) Java语言基础(循环结构三种循环语句

day03<Java语言基础+>

Java语言基础(逻辑运算符的基本用法) Java语言基础(逻辑运算符&&和&的区别) Java语言基础(位运算符的基本用法1) Java语言基础(位异或运算符的特点及面试题) Java语言基础(位运算符的基本用法2及面试题) Java语言基础(三元运算符的基本用法) Java语言基础(三元运算符的练习) Java语言基础(键盘录入的基本格式讲解) Java语言基础(键盘录入的练习1) Java语言基础(键盘录入的练习2) Java语言基础(顺序结构语句) Java语言基础(选择结

day05<Java语言基础--数组>

Java语言基础(数组概述和定义格式说明) Java语言基础(数组的初始化动态初始化) Java语言基础(Java中的内存分配以及栈和堆的区别) Java语言基础(数组的内存图解1一个数组) Java语言基础(数组的内存图解2二个数组) Java语言基础(数组的内存图解3三个引用两个数组) Java语言基础(数组的初始化静态初始化及内存图) Java语言基础(数组操作的两个常见小问题越界和空指针 Java语言基础(数组的操作1遍历) Java语言基础(数组的操作2获取最值) Java语言基础(数

2018.6.13 Java语言基础复习总结

Java语言基础与面向对象编程实践 第一章 初识Java 1.1机器语言 机器语言是指一台计算机全部的指令集合.机器语言室友0和1组成的二进制数,是一串串由0和1组成的指令序列,可将这些指令序列交给计算机执行. 1.2汇编语言 负责把汇编语言翻译成二进制的机器语言,这种翻译程序就是汇编程序. 1.3高级语言 1954年第一个完全脱离机器硬件的高级语言FORTRAN诞生 1.3.1C语言 是一种计算机程序设计语言,它既有高级语言的特点,又具有汇编语言的特点. 1.3.2 C++语言 是具有面向对象