Java基础5----数据类型2(浮点型,布尔型)

Posted iostreamzl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础5----数据类型2(浮点型,布尔型)相关的知识,希望对你有一定的参考价值。

引言

前面一章讲了整型数据类型,这里讲浮点数和bool型数据

浮点型

浮点型描述的是小数,在Java中只要是小数,默认都是double类型,所以说在以后定义小数,都建议直接使用double来定义。

double型

变量的定义与前面的定义方式一致,不在详细解释了。在前面我们知道了,数值之间进行运算,最终的结果有两种转换的方式:

  • 自动转换:小类型在运算前先自动转换为大类型,再运算
  • 强制转换:我们自己决定运算的数据类型,通过各种强制转换手法实现。
public class Demo {
    public static void main(String[] args) {
        // double 变量名 = 小数数值
        int a = 3;
        double b = 10.1;
        System.out.println(a * b);
    }
}


这里可以看到都变了和int运算的时候,发生了类型的自动转换,如果我们需要进行运算结果的接收,最终的结果需要定义为double类型

double res = a * b;

float型

在Java中小数都是double类型的,那么要定义float类型,就需要用到强制类型转换, 需要在数字后面加上F或则用float来进行强制转换

public class Demo {
    public static void main(String[] args) {
        // float 变量名 = 小数数值F 或者 (float) 数值。
        // 需要用到强制转换,否则报错
        float a = 1.21F;
        float b = (float) 1.2;
        System.out.println(a * b); // float与float运算结果还是float类型
    }
}


可以发现最终的结果小数点后面会有一串的数字,这是Java诞生以来一直存在的问题。(我的jdk是13版本的,不知带后面的版本是否解决这个问题),出现这个问题我们不需要担心,后面会有专门的办法来解决。
下面来看一个示例

public class Demo {
    public static void main(String[] args) {
        // 两个int类型的数据运算结果一定是int类型
        // 但是这个结果往往不是我们想要的结果
        int a = 9;
        int b = 2;
        System.out.println(a / b); // 期望是4.5,但是输出是4
    }
}


所以这里想要得到准确的结果就需要对我们的数据进行类型转换

System.out.println((double) a / b);
// 这样讲a类型转换为int类型,运算的时候就会触发java的自动类型转换了

在以后的代码中,数据类型的选择很重要,这将会直接决定是否会得到正确的结果

boolean型

布尔型主要描述逻辑的结果,只有两个值,true和false,在Java中用Boolean来进行布尔型的定义

public class Demo {
    public static void main(String[] args) {
        // boolean 变量名 = true or false
        boolean flag = true;

        // 布尔值一般用于逻辑判断中
        if (flag) {
            System.out.println("flag 的值为true");
        } else {
            System.out.println("flag的值false");
        }
    }
}

总结

  • 在Java中所有的小数都是double类型
  • 数据的类型选择很重要,会直接影响最终的结果
  • boolean类型只有true和false,基本上只用于逻辑判断

以上是关于Java基础5----数据类型2(浮点型,布尔型)的主要内容,如果未能解决你的问题,请参考以下文章

go语言基础-数据类型- 整型,浮点型,布尔型

go语言基础-数据类型- 整型,浮点型,布尔型

Java 基础语法 数据类型和运算符

Java基础---Java数据类型

java基础之数据类型

八种基本数据类型(java)