首页 > 编程语言 >JavaSE_类型转换案例分析

JavaSE_类型转换案例分析

时间:2024-03-26 23:05:16浏览次数:23  
标签:类型转换 int double char 案例 类型 JavaSE byte

Java中的类型转换分为两种:自动类型转换(隐式类型转换)和强制类型转换(显式类型转换)。

1. 自动类型转换(隐式类型转换):当两个不同类型的数据进行运算时,Java会自动将较小的数据类型转换为较大的数据类型。例如,int类型和double类型进行运算时,int类型会自动转换为double类型。

```java
int a = 10;
double b = 3.14;
double c = a + b; // 这里a会自动转换为double类型,然后与b相加
System.out.println(c); // 输出:13.14
```

2. 强制类型转换(显式类型转换):当我们需要将较大的数据类型转换为较小的数据类型时,需要进行强制类型转换。这种转换可能会导致数据丢失。

```java
double a = 10.5;
int b = (int) a; // 将double类型的a强制转换为int类型,并赋值给b
System.out.println(b); // 输出:10
```

注意:在进行强制类型转换时,可能会出现数据丢失的情况,因此在进行强制类型转换时要谨慎。

  什么是A S C I I 码表:
        将字母和数字对应
        
        'A'        65
        'B'        66
        'Z'        90
        
        'a'        97
        'b'        98
        'z'        122
        
        '0'        48
        '1'        49
        '9'        57
    目标: 
        了解A S C I I 编码表
        理解int类型和char类型的运算原理

public class DataConvert3 {
    public static void main(String[] args) {
        // 定义char类型的变量
        char c = 'A';
        System.out.println(c);
        // int 转成 char: 拿66去ASCII码表中找到对应的字母'B',将'B'赋值给c2变量
        char c2 = 66;
        System.out.println(c2); // 'B'
        
        char c3 = 'a';
        int i = 2;
        //      char + int ==> int + int ==> int
        int i2 = c3 + i; // char转int: 拿c3的字母'a'去ASCII码表中找到对应数字97, 97 + 2 = 99
        System.out.println(i2);
    }
}


    数据类型转换的注意事项:
        1.常量不会自动转换.
        2.boolean类型不能参与运算

public class DataConvert4 {
    public static void main(String[] args) {
        byte b1 = 1;
        byte b2 = 2;
        byte b3 = (byte)(b1 + b2); // 变量会自动转换
        byte b5 = 1 + b1; // 15: 错误: 不兼容的类型: 从int转换到byte可能会有损失
        
        // 1.常量不会自动转换.
        byte b4 = 1 + 2;
        
        // 2.boolean类型不能参与运算
        boolean bb1 = true;
        boolean bb2 = false;
        boolean bb3 = bb1 + bb2; // 18: 错误: 二元运算符 '+' 的操作数类型错误
    }
}

标签:类型转换,int,double,char,案例,类型,JavaSE,byte
From: https://blog.csdn.net/youmashengyue/article/details/137028733

相关文章

  • NLP自然语言处理—主题模型LDA案例:挖掘人民网留言板文本数据|附代码数据
    全文链接:http://tecdat.cn/?p=2155最近我们被客户要求撰写关于NLP自然语言处理的研究报告,包括一些图形和统计输出。随着网民规模的不断扩大,互联网不仅是传统媒体和生活方式的补充,也是民意凸显的地带。领导干部参与网络问政的制度化正在成为一种发展趋势,这种趋势与互联网发展的时......
  • 环境影响与碳排放生命周期评估应用及案例分析
    生命周期分析(LifeCycleAnalysis,LCA)是评价一个产品系统生命周期整个阶段——从原材料的提取和加工,到产品生产、包装、市场营销、使用、再使用和产品维护,直至再循环和最终废物处置——的环境影响的工具。这种方法被认为是一种“从摇篮到坟墓”的方法。   生命周期......
  • python爬虫小案例-re正则
    案例如下:1.使用正则表达式和文件操作爬取并保存“某吧”某帖子全部内容(该帖不少于5页。本次选取的是某吧中的NBA吧中的一篇帖子,帖子标题是“克莱和哈登,谁历史地位更高”。爬取的目标是帖子里面的回复内容。源程序如下:importcsvimportrequestsimportreimporttime......
  • C++面向对象整理(9)之类型转换 dynamic_cast、static_cast、const_cast及其安全性
    C++面向对象整理(9)之C++的类型转换dynamic_cast、static_cast、const_cast注:整理一些突然学到的C++知识,随时mark一下例如:忘记的关键字用法,新关键字,新数据结构C++的类型转换C++面向对象整理(9)之C++的类型转换dynamic_cast、static_cast、const_cast一、C++的类型转换......
  • 爬虫之JS混淆和加密案例
    需求:中国空气质量在线监测分析平台是一个收录全国各大城市天气数据的网站,包括温度、湿度、PM2.5、AQI等数据,链接为:https://www.aqistudy.cn/html/city_detail.html,网站显示为:一连串的分析该网站所有的空气质量数据都是基于图表进行显示的,并且都是触发鼠标滑动或者点动......
  • C++的四种强制类型转换符,看了就懂
    运行时类型检查转换dynamic_cast用途及条件1、基类要有虚函数2、主要用于“安全地向下转型”解释1、为什么基类要有虚函数?答:dynamic_cast在运行时会进行类型检查,这种检查不是语法上的检查,而是真实情况地检查。如何检查?如果代码中使用了强制类型转换dynamic_cast,编译器会......
  • 元组案例
    实际案例:统计分数范围​假设我们有一组学生的分数,我们希望统计在不同分数范围内的学生人数。​​scores=(85,92,78,95,88,60,72,98,83,75)count_low=sum(1forscoreinscoresifscore<70)count_medium=sum(1forscoreinscoresif70<=score<85)c......
  • Flink API的四层抽象级别是什么?能用实际项目案例讲解一下吗? Flink API的四层抽象级别
    FlinkAPI的四层抽象级别是什么?能用实际项目案例讲解一下吗?首先,FlinkAPI的四层抽象级别是指:最底层抽象:ProcessFunctionAPI、核心API:DataStreamAPI、TableAPI、SQL。这四个抽象级别可以比作烹饪中的不同方式,从简单的速食制作到复杂的大餐烹饪。1.最底层抽象:ProcessFunctionAP......
  • day03 java自动类型转换 和 强制类型转换
    自动类型转换定义将取值范围小的类型自动提升为取值范围大的类型。注意比较的不是所占内存大小,而是数据类型取值范围的大小,如int整数类型和float浮点类型所占内存数大小相同但是浮点数采用ieee754标准计数法表示范围更大,所以int可以变为float并且不损失精度。当把存储......
  • 【08每天十分钟,javase基础全搞定-秒懂参数传递问题上】
    参数传递问题基本类型按值传递引用类型按照内存地址进行传递。基本类型按值传递publicclassStudent{publicstaticvoidmain(String[]args){inta=10;tese(a);//相当于把10作为参数给了tese这个方法。System.out.println(a);//输......