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

第10节:类型转换

1、自动类型转换隐式1.1 语法自动类型转换就是将小范围类型的数据赋值给大范围类型的变量。赋值过程中编译器会自动完成转换而不需要我们做任何处理。1.2 转换规则链1.2.1 byte → short、int、long、float、doublepackagecom.qxt.src.chapt9.code1_2_1;publicclassExample{publicstaticvoidmain(String[]args){bytebyteNumber100;System.out.println(byteNumber: byteNumber);shortshortNumberbyteNumber;System.out.println(shortNumber: shortNumber);intintNumberbyteNumber;System.out.println(intNumber: intNumber);longlongNumberbyteNumber;System.out.println(longNumber: longNumber);floatfloatNumberbyteNumber;System.out.println(floatNumber: floatNumber);doubledoubleNumberbyteNumber;System.out.println(doubleNumber: doubleNumber);}}1.2.2 short → int、long、float、doublepackagecom.qxt.src.chapt9.code1_2_2;publicclassExample{publicstaticvoidmain(String[]args){shortshortNumber100;System.out.println(shortNumber: shortNumber);intintNumbershortNumber;System.out.println(intNumber: intNumber);longlongNumbershortNumber;System.out.println(longNumber: longNumber);floatfloatNumbershortNumber;System.out.println(floatNumber: floatNumber);doubledoubleNumbershortNumber;System.out.println(doubleNumber: doubleNumber);}}1.2.3 char → int、long、float、doublepackagecom.qxt.src.chapt9.code1_2_3;publicclassExample{publicstaticvoidmain(String[]args){charcharNumberA;System.out.println(charNumber: charNumber);intintNumbercharNumber;System.out.println(intNumber: intNumber);longlongNumbercharNumber;System.out.println(longNumber: longNumber);floatfloatNumbercharNumber;System.out.println(floatNumber: floatNumber);doubledoubleNumbercharNumber;System.out.println(doubleNumber: doubleNumber);}}1.2.4 int → long、float、doublepackagecom.qxt.src.chapt9.code1_2_4;publicclassExample{publicstaticvoidmain(String[]args){intintNumber100;System.out.println(intNumber: intNumber);longlongNumberintNumber;System.out.println(longNumber: longNumber);floatfloatNumberintNumber;System.out.println(floatNumber: floatNumber);doubledoubleNumberintNumber;System.out.println(doubleNumber: doubleNumber);}}1.2.5 long → float、doublepackagecom.qxt.src.chapt9.code1_2_5;publicclassExample{publicstaticvoidmain(String[]args){longlongNumber1000000000000L;System.out.println(longNumber: longNumber);floatfloatNumberlongNumber;System.out.println(floatNumber: floatNumber);doubledoubleNumberlongNumber;System.out.println(doubleNumber: doubleNumber);}}1.2.6 float → doublepackagecom.qxt.src.chapt9.code1_2_6;publicclassExample{publicstaticvoidmain(String[]args){floatfloatNumber3.14f;System.out.println(floatNumber: floatNumber);doubledoubleNumberfloatNumber;System.out.println(doubleNumber: doubleNumber);}}2、强制类型转换显式2.1 语法强制类型转换就是大范围类型数据转换为小范围类型变量。需要手动加 (目标类型) 可能丢失精度、溢出、变负数。[目标类型][变量](目标类型)原值;引用类型同样适用后续章节介绍2.2 转换规则链2.2.1 double → float、long、int、short、byte、charpackagecom.qxt.src.chapt9.code2_2_1;publicclassExample{publicstaticvoidmain(String[]args){doubledoubleNumber100.0;System.out.println(doubleNumber: doubleNumber);floatfloatNumber(float)doubleNumber;System.out.println(floatNumber: floatNumber);longlongNumber(long)doubleNumber;System.out.println(longNumber: longNumber);intintNumber(int)doubleNumber;System.out.println(intNumber: intNumber);shortshortNumber(short)doubleNumber;System.out.println(shortNumber: shortNumber);bytebyteNumber(byte)doubleNumber;System.out.println(byteNumber: byteNumber);charcharNumber(char)doubleNumber;System.out.println(charNumber: charNumber);}}2.2.2 float → long、int、short、byte、charpackagecom.qxt.src.chapt9.code2_2_2;publicclassExample{publicstaticvoidmain(String[]args){floatfloatNumber100.0f;System.out.println(floatNumber: floatNumber);longlongNumber(long)floatNumber;System.out.println(longNumber: longNumber);intintNumber(int)floatNumber;System.out.println(intNumber: intNumber);shortshortNumber(short)floatNumber;System.out.println(shortNumber: shortNumber);bytebyteNumber(byte)floatNumber;System.out.println(byteNumber: byteNumber);charcharNumber(char)floatNumber;System.out.println(charNumber: charNumber);}}2.2.3 long → int、short、byte、charpackagecom.qxt.src.chapt9.code2_2_3;publicclassExample{publicstaticvoidmain(String[]args){longlongNumber1000000000L;System.out.println(longNumber: longNumber);intintNumber(int)longNumber;System.out.println(intNumber: intNumber);shortshortNumber(short)longNumber;System.out.println(shortNumber: shortNumber);bytebyteNumber(byte)longNumber;System.out.println(byteNumber: byteNumber);charcharNumber(char)longNumber;System.out.println(charNumber: charNumber);}}2.2.4 int → short、byte、charpackagecom.qxt.src.chapt9.code2_2_4;publicclassExample{publicstaticvoidmain(String[]args){intintNumber100;System.out.println(intNumber: intNumber);shortshortNumber(short)intNumber;System.out.println(shortNumber: shortNumber);bytebyteNumber(byte)intNumber;System.out.println(byteNumber: byteNumber);charcharNumber(char)intNumber;System.out.println(charNumber: charNumber);}}2.2.5 short → byte、charpackagecom.qxt.src.chapt9.code2_2_5;publicclassExample{publicstaticvoidmain(String[]args){shortshortNumber100;System.out.println(shortNumber: shortNumber);bytebyteNumber(byte)shortNumber;System.out.println(byteNumber: byteNumber);charcharNumber(char)shortNumber;System.out.println(charNumber: charNumber);}}2.2.6 byte → short、charpackagecom.qxt.src.chapt9.code2_2_6;publicclassExample{publicstaticvoidmain(String[]args){bytebyteNumber100;System.out.println(byteNumber: byteNumber);charcharNumber(char)byteNumber;System.out.println(charNumber: charNumber);}}2.2.7 char → short、byte无符号char和有符号short、byte是两种完全不同的类型必须进行强转。packagecom.qxt.src.chapt9.code2_2_7;publicclassExample{publicstaticvoidmain(String[]args){charcharNumberA;System.out.println(charNumber: charNumber);bytebyteNumber(byte)charNumber;System.out.println(byteNumber: byteNumber);shortshortNumber(short)charNumber;System.out.println(shortNumber: shortNumber);}}章节预告 —— 算术运算符
http://www.rkmt.cn/news/1386025.html

相关文章:

  • 从鸢尾花分类到人脸识别:手把手用Python实战PCA、LDA、ICA和因子分析
  • 教育机构利用Taotoken为学生提供稳定的大模型编程实验环境
  • 第5章:AI辅助ERC20与ERC721进阶——代币经济学与批量铸造
  • 2026软连接定制技术维度解析与合规企业实测参考:浸粉铜排/软铜排定制/铜排浸漆/铜排浸粉/铜排软连接/铜箔软连接/选择指南 - 优质品牌商家
  • 马斯克转发的这张梗图,藏着工程界最朴素的真理
  • 【分享】AI记账本 AI识别智能记账 解锁会员版
  • 华为芯片重大进展!何庭波:5年达1.4nm同等水平
  • 2026年邯郸有实力的悬架螺栓销售厂家甄选指南:聚焦制造实力与稳定交付 - 2026年企业推荐榜
  • 2026年5月新消息发布:昆明学校搬家品牌推荐,专业团队保障教学秩序 - 2026年企业推荐榜
  • Redis分布式锁进阶第二十篇
  • 【UniApp小程序开发】解决无法使用Vue自定义指令的完美替代方案:权限组件封装
  • PCAN软件隐藏技巧:用VBS脚本控制软件界面,打造专属自动化测试工作流
  • 嵌入式SQLite数据库实验
  • 2026北京当天收车专业机构实测排行与避坑指南:北京闲置车回收/北京高价回收二手车/北京高价收车/北京上门收二手车/选择指南 - 优质品牌商家
  • 2026年西安铝合金门窗TOP5推荐:青岛系统门窗/青岛铝合金门窗/青岛门窗/青岛阳光房/青岛阳台封窗/上海断桥铝门窗/选择指南 - 优质品牌商家
  • 2026年Q2浙江无缝通用锁企业怎么选择?这三大趋势与一个标杆给出答案 - 2026年企业推荐榜
  • 2026年Q2北京正规收二手车机构排行实测对比:北京正规收车/北京淘汰车回收/北京私家车回收/北京诚信收车/北京闲置车回收/选择指南 - 优质品牌商家
  • 第9章:AI辅助Layer2与跨链开发——Arbitrum、Optimism与跨链桥
  • 内网环境下Win7系统批量离线补丁部署实战指南
  • 第一篇:《Docker 是什么?为什么它改变了软件交付》
  • 华为正式发表半导体领域新定律
  • 20252805 2025-2026-2 《网络攻防实践》第9次作业 实践九 软件安全攻防--缓冲区溢出和shellcode
  • 2026年婚恋小程序技术实测:婚介所小程序、婚介所管理系统、婚介管理小程序、婚介管理系统、婚介管理软件、婚介系统选择指南 - 优质品牌商家
  • 【昇腾CANN】metadef元数据:为什么你写的算子加载报格式错误
  • 别再盲目上GraphRAG!企业AI知识管理正分为三层,你选对了吗?
  • API中转站横评:8个技术维度拆解词元无忧、硅基流动和One API
  • 游戏党必看:Win10后台Antimalware扫描导致掉帧?这样设置让它只在空闲时工作
  • 以太网变压器插入损耗多少dB算合格?看完这篇你就懂了
  • 告别依赖报错:详解NUMECA在Ubuntu/CentOS安装中的环境检查与自动修复
  • 从理论到仿真:如何用Backstepping+DSC搞定一个非线性系统跟踪问题