java数据类型及类型转换

java数据类型及类型转换

划分数据类型,是为了给数据分配所需的内存。在声明变量时要使用数据类型。
数据类型分为基本数据类型复合数据类型(引用类型)。而基本数据类型分为数值类型和boolean类型。引用类型有数组,接口和类。(数值类型有整数类型,浮点类型,字符类型)

基本数据类型(数值类型)

整数类型:

byte(字节型)short(短整型)int(整型)long(长整型)

浮点类型:

float(单精度浮点型)double(双精度浮点型)

注:float类型的数值后有一个后缀F。如(3.14F).没有后缀F的浮点数值默认为double类型。也可以在浮点数值后面添加后缀D。

字符类型:

char类型用于表示单个字符,通常用来表示字符常量。(占两个字节)

基本数据类型(boolean类型)

有两个值:true和false,用来判定逻辑条件。boolean只占一位。

代码注解:

package com.IT.operator.base;

public class Demon02 {
    public static void main(String[] args) {
        //八大基本数据类型
        int num1 = 10;
        byte num2 = 20;
        short num3 = 30;
        long num4 = 30l;//long类型要在数字后面加个l便于区分。

        //小数:浮点数
        float num5 = 50.1F;//float类型后面加个F便于区分。
        double num6 = 3.1425926;

        //字符类型
        char name = 'A';
        //字符串,String不是关键字
        //布尔值
        boolean flag = true;
        //boolean flag = false;
    }
}

补充:java整数拓展:进制问题,二进制0b开头,十进制,八进制0开头,十六进制0x开头。在浮点数中,最好完全避免使用浮点数进行比较。字符拓展:字符强制转换。布尔值扩展:判定真假if()。

代码注解:

package com.IT.operator.base;

public class Demon4 {
    public static void main(String[] args) {
           int i = 128;
           double b = i;
        System.out.println(i);
        System.out.println(b);
        char c = 'a';
        int d = c+1;
        System.out.println(d);
        System.out.println((char)d);
    }
}

类型转换:

字符由低到高为byte,short,char-->int-->long-->float-->double

注:不同类型的数据先转换为同一类型,然后再进行计算。

强制转换:

(类型)变量名 高-->低

自动转换:

低-->高

 int num1 = 10;
        float num7 = (float)num1;
        double num8 = num1;//由低到高的自动转换
        System.out.println((int)23.5);  //23,有可能存在精度问题

数值转换时的注意点:

1.不能对boolean值进行转换

2.不能把对象类型转为不相干的类型

3.高级转为低级时强制转换

4.转换的时候可能出现溢出或者精度问题4

详见视频:狂神说java

posted @ 2021-07-20 18:19  有点儿意思  阅读(134)  评论(0编辑  收藏  举报