• Java类型转换


    强类型语言和弱类型语言

    • 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

    Java的数据类型分为两大类

    • 基本类型(primitive type)
    • 引用类型(reference type)
      在这里插入图片描述

    什么是字节

    • 位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。
    • 字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示,
    • 1B(byte,字节) = 8bit(位)
    • 字符:是指计算机中使用的字母、数字、字和符号

    1bit表示1位,
    1Byte表示一个字节1B=8b。
    1024B=1KB
    1024KB=1M
    1024M=1G.

    类型转换

    • 由于Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。
    • 低-------->高
    byte,short,char-> int -> long-> float ->double
    
    • 运算中,不同类型的数据先转化为同一类型,然后进行运算。

    强制类型转换

    (转换后的类型)变量名	高-->
    System.out.println((int)22.5);      //23
    System.out.println((int)-12.13f);   //-12
    

    自动类型转换

    -->
    		int i = 128;
            double a = i;
            System.out.println(i);  //128
            System.out.println(a);  //128.0
    

    注意点:

    1. 不能对布尔值进行转换
    2. 不能把对象类型转换为不相千的类型
    3. 在把高容量转换到低容量的时候,强制转换
    4. 转换的时候可能存在内存溢出,或者精度问题!

    内存溢出案例及解决方案

    • 操作比较大的数时容易遇到内存溢出问题
    		//JDK7的新特性,数字之间可以用下划线分割
            int money = 10_0000_0000;
            System.out.println(money); //1000000000
            int years = 20;
            int total = money*years; //-1474836480,计算的时候溢出了
            long total2 = money*years; //默认是int,转换之前已经存在溢出问题
            System.out.println(total2); //-1474836480
            long total3 = money*((long)years); //先把一个数转换为long
            System.out.println(total3); //20000000000
    

    本文来自博客园,作者:兮动人,转载请注明原文链接:https://www.cnblogs.com/xdr630/p/15254780.html

  • 相关阅读:
    程序化量化
    净资产收益率大于10%的选股公式
    转json工具网址https://www.bejson.com/devtools/sql2csharppojo/
    PR 和 MR 的关联
    npm 和 pip 介绍
    QA(测试) 工作准则建议
    2021 年终总结 和 2022 年 flag
    测试排期估时多长合理?
    看完《许三观卖血记》有感
    怎么确定自己的测试准备工作已经做好了?
  • 原文地址:https://www.cnblogs.com/xdr630/p/15254780.html
Copyright © 2020-2023  润新知