Día 1 del diario de aprendizaje de Java

Día 1 del diario de aprendizaje de Java

tipo de datos

Java es un lenguaje fuertemente tipado, que requiere el uso de variables para cumplir estrictamente con las regulaciones, y todas las variables deben definirse antes de que puedan usarse.

Los tipos de datos de Java se dividen en dos categorías: tipos primitivos y tipos de referencia

public class Demo01 {
    
    
    public static void main(String[] args) {
    
    
        //八大基本数据类型
        //整数
        int num1 = 10;//最常用
        byte num2 = 20;
        short num3 = 30;
        long num4 = 40L;//long类型要在数字后面加个L(使用大写容易区分)
        //浮点数:小数
        float num5 = 50.5F;//float类型要在数字后面加个F(使用大写容易区分)
        double num6 = 3.1415926535;
        //字符
        char year = '牛';
        //字符串 String不是关键字是一个类
        String name = "李云龙";
        //布尔类型:值只能是true或者false
        //boolean a = true;

        System.out.println(num1);
        System.out.println(num2);
        System.out.println(num3);
        System.out.println(num4);
        System.out.println(num5);
        System.out.println(num6);
        System.out.println(year);
        System.out.println(name);
        //System.out.println(a);
    }
}

Conversión de tipo

Dado que Java es un lenguaje fuertemente tipado, la conversión de tipos es necesaria al realizar algunos cálculos de gran alcance.

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

En la operación, primero se convierten diferentes tipos de datos al mismo tipo y luego se realiza la operación.

public class Demo02 {
    
    
    public static void main(String[] args) {
    
    
        //类型转换
        //强制转换:(类型)变量名 从高到低
        int i = 128;
        byte b = (byte) i;//-128 内存溢出
        double d = i;//128.0 自动转换 从低到高
        System.out.println(i);
        System.out.println(b);
        System.out.println(d);
        System.out.println("====================");
        System.out.println((int)23.7);//23 精度损失
        System.out.println((int)-49.58F);//-49 精度损失

        /*
        注意点:
        1.不能对布尔值进行转换
        2.不能把对象类型转换成不相干的类型
        3.在把高容器转换到低容器时,使用强制转换
        4.转换的时候可能存在内存溢出,或者精度问题
         */

        System.out.println("====================");
        //操作较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用下划线分割
        int money = 10_0000_0000;//10亿
        int year = 20;
        int total = money * year;//-1474836480 计算的时候溢出了
        long total2 = money * year;//money和year默认是int,转换之前就已经存在溢出问题了
        long total3 = money * ((long)year);//先把一个数转换成long
        System.out.println(total);//-1474836480
        System.out.println(total2);//-1474836480
        System.out.println(total3);//20000000000
    }
}

Supongo que te gusta

Origin blog.csdn.net/Theend_7889/article/details/114109753
Recomendado
Clasificación