知识库 知识库
首页
  • Hyperskill - Java

    • Java basic
    • Java OOP
    • 应知
    • 扩展
    • IO & Stream
    • Error & Exception
    • Algorithm & Data structure
    • Design pattern
    • Web
    • Spring boot
  • 练习题

    • 选择题 & 填空题
    • 代码题
  • Frank - Java与生活 (OOP)

    • 参考资料
    • Java基础
    • OOP上半部分
    • OOP下半部分
  • Frank - Java API进阶

    • Base API
    • Unit Test and main function
  • 学习笔记
  • 学习笔记

    • 数据库
  • Frank - MySQL删库跑路

    • 安装、连接、配置
    • 基本操作——数据库
    • 基本操作——表
    • 基本操作——数据
    • 数据类型
    • 列属性完整性
    • 数据库设计思维
    • 单表查询
    • 多表查询
  • 学习笔记

    • 其它
  • Frank - Linux现代方法

    • 必知
    • 命令
    • 技巧
  • 技术文档
  • Git
  • GitHub技巧
  • 前端
  • Khan Academy - 语法
  • Monthly
  • 阅读
  • Others
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
收藏
  • 标签
  • 归档
GitHub (opens new window)

Jim FuckPPT

Java小学生
首页
  • Hyperskill - Java

    • Java basic
    • Java OOP
    • 应知
    • 扩展
    • IO & Stream
    • Error & Exception
    • Algorithm & Data structure
    • Design pattern
    • Web
    • Spring boot
  • 练习题

    • 选择题 & 填空题
    • 代码题
  • Frank - Java与生活 (OOP)

    • 参考资料
    • Java基础
    • OOP上半部分
    • OOP下半部分
  • Frank - Java API进阶

    • Base API
    • Unit Test and main function
  • 学习笔记
  • 学习笔记

    • 数据库
  • Frank - MySQL删库跑路

    • 安装、连接、配置
    • 基本操作——数据库
    • 基本操作——表
    • 基本操作——数据
    • 数据类型
    • 列属性完整性
    • 数据库设计思维
    • 单表查询
    • 多表查询
  • 学习笔记

    • 其它
  • Frank - Linux现代方法

    • 必知
    • 命令
    • 技巧
  • 技术文档
  • Git
  • GitHub技巧
  • 前端
  • Khan Academy - 语法
  • Monthly
  • 阅读
  • Others
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
收藏
  • 标签
  • 归档
GitHub (opens new window)
  • Hyperskill - Java

  • 练习题

  • Frank - Java与生活

    • 参考资料

    • Java基础

      • 一带而过的东西
      • 值得注意的是
      • 关于Java语言
      • String
      • 自动类型转换
        • 规则
        • 自动类型转换(隐式转换)
        • 强制类型转换(显式转换)
        • 隐含强制类型转换
      • import 导包
      • 数组
      • 方法的重载
      • 规范
    • OOP上半部分

    • OOP下半部分

  • Frank - Java API进阶

  • 学习笔记

  • Java
  • Frank - Java与生活
  • Java基础
Jim
2022-04-15
目录

自动类型转换

# 自动类型转换

菜鸟教程:Java 自动类型转换 (opens new window)

# 规则

低 ------------------------------------------> 高 
byte,short,char —> int —> long —> float —> double
1
2

数据类型转换必须满足如下规则:

  1. 不能对 boolean 类型进行类型转换。

  2. 不能把对象类型转换成不相关类的对象。

  3. 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。

  4. 转换过程中可能导致溢出或损失精度,例如:

int i =128;   
byte b = (byte)i;
1
2

因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢出。

  1. 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入,例如:
(int)23.7 == 23;       
(int)-45.89f == -45
1
2

# 自动类型转换(隐式转换)

char word_1 = 'a';
int numOfWord_1 = word; // numOfWord_1 = 97

char word_2 = 'A';
int numOfWord_2 = word_2 + 1; // numOfWord_2 = 66
1
2
3
4
5

# 强制类型转换(显式转换)

  1. 转换格式要是兼容的。
  2. 格式:(type)value type 为强制转换后的类型。
int num_1 = 127;
byte num_2 = (byte)num_1;

double num_3 = 3.1415926;
float num_4 = (float)num_3;
1
2
3
4
5

# 隐含强制类型转换

  1. 整数的默认类型是 int。
  2. 浮点数的默认类型是 double,在定义 float 类型时必须在数字后面跟上 F 或者 f。
double number_1 = 2.22;
float number_2 = 3.33F;
1
2
编辑 (opens new window)
上次更新: 2022/09/26, 16:55:15
String
import 导包

← String import 导包→

最近更新
01
《挪威的森林》
04-14
02
青钢影
04-14
03
Processing strings
02-18
更多文章>
Theme by Vdoing | Copyright © 2022-2023 Jim Frank | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式