2021-04-06

package com.company;

public class demo04 {

public static void mainn(String[] args){

// 类型转换

        // 1自动类型转换

        // 类型兼容 小范围变量转为大范围变量

        int num1 =18;

        double num2 =19.8;

        double num3 = num1; // 发生了自动类型转换 把int型转为double型

        // 特例1:

        char sex ='女';

        //char num4 = num1 + sex ;  // int + char 类型不能兼容不能相加

        int num5 = num1 +sex; // int + char +int 之所以不报错,原因:char在系统中用ASCII码表示(其实就是数字)

        int num6 = num1 + (int)sex; // 相当于发生了强制类型转换

        System.out.println(num6);  // 22917 = 18 + ?

        // 特例2:

        String name ="小茗";

        // int num7 = num1 + name ; // int + String=? 会报错

        String res = num1 + name; // 此时的 + 是拼接操作 ,会把数字num1当作一个字符串

        // 2强制类型转换 发生在高精度转为低精度

        double high =188.88;

        int relHigh = (int)high; // 强制类型转换 将大精度转为小精度的数

        int wight = (int)88.88;  // 强制类型转换 将大精度转为小精度的数

    }

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容