类型转换

class Scratch {
public static void main(String[] args) {
int i =128;
byte b =(byte)i; //内存溢出

    //强制转换   (类型)变量名   高--低
    //自动转换      低--高

    System.out.println(i);
    System.out.println(b);

    int i2 =128;
    double b2=i2;

    System.out.println(i2);
    System.out.println(b2);
    /*
    注意点:
    1,不能对布尔值进行转换
    2,不能把对象类型转换为不相干的类型
    3,再把高容量转换为低容量的的时候,强制转换
    4,转换的时候可能存在内存溢出,或者精度问题
     */

    //============================================
    System.out.println("============================================");
    System.out.println((int)23.7);  //23
    System.out.println((int)-45.89f);  //45

    System.out.println("============================================");
    char C='a';
    int d=C+1;

    System.out.println(d);
    System.out.println((char)d);

    //操作比较大的时候,注意溢出问题
    //JDK7新特性,数字之间可以用下划线分割
    int money=10_0000_000;
    int year =20;
    int total =money*year; //-1474836480 计算的时候溢出了
    long  total3 = money*((long)year);  //先把一个数转换为long

    System.out.println(total3);

}

}

posted @   努力做最好的自己  阅读(10)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示