数据类型转换之自动类型转换

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

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

强制类型转换(显式)

一、自动类型转换代码

 1 public class Demo01DataType {
 2     public static void main(String[] args) {
 3         System.out.println(1024); // 这就是一个整数,默认就是int类型
 4         System.out.println(3.14); // 这就是一个浮点数,默认就是double类型
 5
 6         // 左边是long类型,右边是默认的int类型,左右不一样
 7         // 一个等号代表赋值,将右侧的int常量,交给左侧的long变量进行存储
 8         // int --> long,符合了数据范围从小到大的要求
 9         // 这一行代码发生了自动类型转换。
10         long num1 = 100;
11         System.out.println(num1); // 100
12
13         // 左边是double类型,右边是float类型,左右不一样
14         // float --> double,符合从小到大的规则
15         // 也发生了自动类型转换
16         double num2 = 2.5F;
17         System.out.println(num2); // 2.5
18
19         // 左边是float类型,右边是long类型,左右不一样
20         // long --> float,范围是float更大一些,符合从小到大的规则
21         // 也发生了自动类型转换
22         float num3 = 30L;
23         System.out.println(num3); // 30.0
24     }

运行结果

  1024

  3.14

  100

  2.5

  30

  

原文地址:https://www.cnblogs.com/chenliqiang/p/11441823.html

时间: 2024-10-11 10:21:53

数据类型转换之自动类型转换的相关文章

JavaScript系列文章:自动类型转换

我们都知道,JavaScript是类型松散型语言,在声明一个变量时,我们是无法明确声明其类型的,变量的类型是根据其实际值来决定的,而且在运行期间,我们可以随时改变这个变量的值和类型,另外,变量在运行期间参与运算时,在不同的运算环境中,也会进行相应的自动类型转换. 自动类型转换一般是根运行环境和操作符联系在一起的,是一种隐式转换,看似难以捉摸,其实是有一定规律性的,大体可以划分为:转换为字符串类型.转换为布尔类型.转换为数字类型.今天我们就介绍一下这几种转换机制. 1. 转换为字符串类型(to s

自动类型转换、强制类型转换、作用域、整型表数范围

一.变量的作用域 测试代码: public class Test1 { private static int value = 1; // 全局变量 private static int temp = 0; // 全局变量 public static void main(String[] args) { int value = 2; // 局域变量覆盖全局变量 System.out.println(value); // 输出的是局域变量,全局变量被屏蔽 System.out.println(tem

9.Java数据类型转换(自动转换和强制转换)

数据类型的转换,分为自动转换和强制转换.自动转换是程序在执行过程中“悄然”进行的转换,不需要用户提前声明,一般是从位数低的类型向位数高的类型转换:强制类型转换则必须在代码中声明,转换顺序不受限制. 自动数据类型转换 自动转换按从低到高的顺序转换.不同类型数据间的优先关系如下:     低--------------------------------------------->高     byte,short,char-> int -> long -> float -> do

C语言自动类型转换

自动转换遵循以下规则: 1) 若参与运算量的类型不同,则先转换成同一类型,然后进行运算. 2) 转换按数据长度增加的方向进行,以保证精度不降低.(eg:int型和long型运算时,先把int量转成long型后再进行运算.) a.若两种类型的字节数不同,转换成字节数高的类型 b.若两种类型的字节数相同,且一种有符号,一种无符号,则转换成无符号类型 3) 所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算. 4) char型和short型参

java的自动类型转换和强制类型转换

一.自动类型转换 在 Java 程序中,不同的基本数据类型的数据之间经常需要进行相互转换.例如: , 代码中 int 型变量 score1 可以直接为 double 型变量 score2 完成赋值操作,运行结果为: 82.0  这种转换称为自动类型转换. 当然自动类型转换是需要满足特定的条件的:目标类型大于元类型 二.强制类型转换 当程序中需要将 double 型变量的值赋给一个 int 型变量,该如何实现呢? 显然,这种转换是不会自动进行的!因为 int 型的存储范围比 double 型的小.

Java自动类型转换和强制类型转换

1.容量小的数据类型可以自动转成容量大的数据类型(注:容量大指的是数据类型表征的范围大.) 2.数据自动类型转换: cast:转型 long型可以自动转换成float但是可能丢失精度. int型转换为char型需要强制转型. 但是char型转成int是不需要强制转换. 3.表达式中类型提升问题.

自动类型转换

说完了强制类型转换,再来看看自动类型转换,实际上自动类型转换是建立在强制类型转换的基础上,当预期某个位置应该是某类型(布尔.数值.字符串)的数据时,就会调用相应的强制类型转换函数,这个是自动进行的. *当JavaScript遇到预期为布尔值的地方(比如if语句的条件部分),就会将非布尔值的参数自动转换为布尔值.系统内部会自动调用Boolean函数. 因此除了以下六个值,其他都是自动转为true. undefined null -0 0或+0 NaN ''(空字符串) *当JavaScript遇到

JavaScript系列文章:自动类型转换-续

在上一篇文章中,我们详细讲解了JavaScript中的自动类型转换,由于篇幅限制,没能覆盖到所有的转换规则,这次准备详细讲解一下. 上次我们提到了对象类型参与运算时转换规则: 1). 在逻辑环境中执行时,会被转换为true 2). 在字符串环境和数字环境中,它的valueOf()方法和toString()方法会依次被调用,然后根据返回值进行再次转换.首先,valueOf()方法会被调用,如果其返回值是基础类型,则将这个返回值转为目标类型,如果返回值不是基础类型,则再试图调用toString()方

慕课网-安卓工程师初养成-2-9 Java中的自动类型转换

来源:http://www.imooc.com/code/1236 在 Java 程序中,不同的基本数据类型的数据之间经常需要进行相互转换.例如: , 代码中 int 型变量 score1 可以直接为 double 型变量 score2 完成赋值操作,运行结果为: 这种转换称为自动类型转换. 当然自动类型转换是需要满足特定的条件的: 1.  目标类型能与源类型兼容,如 double 型兼容 int 型,但是 char 型不能兼容 int 型 2.  目标类型大于源类型,如 double 类型长度