专栏首页SAMshareJavaNote[002] - 基本数据类型

JavaNote[002] - 基本数据类型

Java的 3类8种基本数据类型,分别是:

  • 数值型:byte、short、int、long
  • 字符型:char
  • 布尔型:boolean

1、整型数据类型

public class TestPrimitiveDataType {
    public static void main(String[] args){
        // 测试整型变量
        int a = 15;
        int b = 015; // 以0开头的是 八进制
        int c = 0x15; // 以0x开头的是 十六进制
        int d = 0b1101; // 以0b开头的是 二进制

        System.out.println(b); //13
        System.out.println(c); //21
        System.out.println(d); //13

        byte age = 17;
        short salary = 30000;
        int population = 200000000;
        long globalPopulation = 74000000000L; //以 L 结尾
    }
}

2、浮点型数据类型

import java.math.*;

public class TestPrimitiveDataType2 {
    public static void main(String[] args){
        // 测试浮点型变量
        float a = 3.14F; // 因为默认数字是double,所以如果要定义为float的话,需要加后缀 F
        double b = 618;
        double c = 618E-2; // 科学计数法,代表6.18
        System.out.println(c); //6.18

        // 浮点数是不准确的,千万不能用来作比较
        // case1:
        float d = 0.1f;
        double e = 1.0/10;
        System.out.println(d==e); // false

        // case2:
        float f1 = 423432423f;
        float f2 = f1 + 1;
        if(f1 == f2){
            System.out.println("f1==f2"); // 答案竟然是相等!可见浮点型的比较是不准确的!
        }
        else {
            System.out.println("f1!=f2");
        }

        // 如果非要用浮点型来比较,就需要引用 java.math 下的 BigDecimal来解决了
        System.out.println("###########################################################");
        BigDecimal bd = BigDecimal.valueOf(1.0);
        bd = bd.subtract(BigDecimal.valueOf(0.1));
        bd = bd.subtract(BigDecimal.valueOf(0.1));
        bd = bd.subtract(BigDecimal.valueOf(0.1));
        bd = bd.subtract(BigDecimal.valueOf(0.1));
        bd = bd.subtract(BigDecimal.valueOf(0.1));

        System.out.println(bd); // 0.5
        System.out.println(1.0-0.1-0.1-0.1-0.1-0.1); // 0.5000000000000001

    }
}

3、字符型数据类型

char类型用来表示在Unicode编码表中的字符,它占2个字节,可允许有65535个字符,通常用从 '\u0000' 到 '\uFFFF'之间的十六进制值来表示(前缀为u表示Unicode)。

public class TestPrimitiveDataType3 {
    public static void main(String[] args){
        char a = 'S';
        char b = '森';
        char c = '\u0061';
        System.out.println(c);

        // 转义字符
        System.out.println(""+a+'\n'+b);
    }
}

4、布尔数据类型

boolean类型有两个常量值,就是true和false,在内存中占1位(不是一个字节),不可用0或者非0的整数替代true和false。

      boolean flag;
      flag = true;
      if(flag){
        // true的分支
      } else{
        // false的分支
      }

本文分享自微信公众号 - SAMshare(gh_8528ce7b7e80),作者:Samshare

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-05-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • JavaNote[004] - 选择结构

    这个也很好理解,其语法结构为:if(布尔表达式){语句块1} else {语句块2}

    Sam Gor
  • Machine Learning-教你用Scikit-Learn来做分类器(中)

    选自 Python-Machine-Learning-Book On GitHub

    Sam Gor
  • JavaNote[005] - 循环结构

    这个算是一个比较高级一点的用法了,就是在一个循环语句里再嵌套一个循环语句。这个其实也没什么,可以通过看几个小栗子来理解一下。

    Sam Gor
  • Java8---Stream的基本用法(2)

    下面列举了一些,Stream的一些基本的使用方法,比如去重,遍历,筛选,获取指定元素的等。

    IT云清
  • Stream 流解读

    java.util.Stream 可以对元素列表进行一次或多次操作。Stream操作可以是中间值也可以是最终结果。最后的操作返回的是某种类型结果,而中间操作返回...

    用户7676729
  • Java——代码块(普通块、构造块、静态块)

    代码编写中,使用{}声明的程序块就属于代码块,而根据其出现的位置,及声明关键字的不同,分为四种:普通代码块、构造块、静态块、同步代码块(多线程中涉及)

    Winter_world
  • 使用朴素贝叶斯进行文档分类(二)

    用户6021899
  • Oracle应用开发实战一

    Oracle介绍 ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式 数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/S...

    Java帮帮
  • 三分钟学 Go 语言——range深度解析

    小熊最近两天加班比较严重,要处理的事情很多,但是学习的热情永远不会减少,前面讲述的go语言语法是非常非常简单的,所以没有做深入的剖析,后面会从各种角度解析语法,...

    机智的程序员小熊
  • Day59:按之字形顺序打印二叉树

      这道题在之前的题目中遇到过类似的,前面的一道题是从上往下打印二叉树和这道题很类似,只不过那道题是简单的从上到下打印二叉树,而我们这道题在此基础上进行了升华,...

    stefan666

扫码关注云+社区

领取腾讯云代金券