当前位置: 首页 > news >正文

Java基础之隐式类型转换

类型转换

基本数据类型表示范围大小排序:

在这里插入图片描述

在变量赋值及算术运算的过程中,经常会用到数据类型转换,其分为两类:

  • 隐式类型转换

  • 显式类型转换

1 隐式类型转换

情形1:赋值过程中,小数据类型值或变量可以直接赋值给大类型变量,类型会自动进行转换

案例展示:

package com.briup.chap02;public class Test081_ImplicitTrans {public static void main(String[] args) {    // int类型值 赋值给 long类型变量 long num = 10;System.out.println(num);// float类型值 赋值给 double类型变量 double price = 8.0F;System.out.println(price);char c = 'a';// char 赋值给 intint t = c;System.out.println(t);// 下面会编译报错//float pi = 3.14;//int size = 123L;//int length = 178.5;}
}

情形2:byte、short、char类型的数据在进行算术运算时,会先自动提升为int,然后再进行运算

案例展示:

public static void main(String[] args) {byte b = 10;short s = 5;// (byte -> int)  +  (short -> int)//			int   +   int   //		结果为    intint sum = b + s;// 下一行编译报错,int 无法自动转换为 short进行赋值//short sum2 = b + s;System.out.println(sum);
}

情形3:其他类型相互运算时,表示范围小的会自动提升为范围大的,然后再运算

案例展示:

public static void main(String[] args) {byte b = 10;short s = 5;double d = 2.3;//		(byte10->int10 - 5) * (short->int5) -> 5 * 5 = 25//				int25   +  double2.3//			 double25.0 +  double2.3//		结果:double 27.3,必须用double变量来接收该值double t = (b - 5) * s + d;// double赋值给float,编译报错// float f = (b - 5) * s + d;System.out.println(t);
}
http://www.lryc.cn/news/424783.html

相关文章:

  • 【数据结构与算法 | 图篇】Dijkstra算法(单源最短路径算法)
  • windows c转linux c要做的事情。
  • 【高等代数笔记】002.高等代数研究对象(二)
  • ubuntu服务器部署的mysql本地连不上的问题
  • python redis安装
  • YJ0043定制版抖音电商卷抢购系统带回收商城抖音电商优惠卷投资理财系统
  • 如何选择图片和视频
  • html+css网页制作 电商华为商城首页 ui还原度100%
  • EDAS(企业级应用服务)
  • 简单工厂,工厂方法 和 抽象工厂
  • python 压力测试脚本
  • 【Linux】多线程7——线程池
  • Linux Shell实例
  • Linux~MySQL数据库具体操作
  • Unity WebGL平台Hybrid Generate All报错undefined symbol sendfile
  • Java高级Day28-多线程
  • 0003 保险的会计要素及其计量属性
  • Swift版本控制的艺术:掌握代码演化的魔杖
  • 学习实战:生活垃圾自动识别与分类系统的实现
  • Swift模块化构建:解锁代码重用的金钥匙
  • 【计算机网络】CIDR无分类编址知识学习
  • JavaScript 详解
  • 运维实践01-安装OpenJDK
  • Windows下,C# 通过FastDDS高效通信
  • 【模型】ResNet
  • Objective-C中NSExpression与NSPredicate的协同艺术
  • Apache-JMeter压测工具教程
  • Spring Boot集成selenium实现自动化测试
  • 基于phpstudy对cmseasy5.5进行漏洞复现
  • 【c++】 C语言的输入与输出C++的IO流STL空间配置器