首页 > 编程语言 >Java基本数据类型

Java基本数据类型

时间:2023-03-05 10:33:25浏览次数:30  
标签:基本 Java double 数据类型 System println true out

整数类型:byte、short、int、long

Java各整数类型有固定的表数范围和字段长度,不受具体操作系统的影响,以保证Java程序的可移植性。

 说明

  • 定义long类型的变量,赋值时需要以"l"或"L"作为后缀。
  • Java程序中变量通常声明为int型,除非不足以表示较大的数,才使用long。
  • Java的整型常量默认为 int 型。

补充:计算机存储单位

字节(Byte):是计算机用于计量存储容量的基本单位,一个字节等于8 bit。

位(bit):是数据存储的最小单位。二进制数系统中,每个0或1就是一个位,叫做bit(比特),其中8 bit 就称为一个字节(Byte)。

转换关系:

   8 bit = 1 Byte

  1024 Byte = 1 KB

  1024 KB = 1 MB

  1024 MB = 1 GB

  1024 GB = 1 TB

浮点类型:float、double

与整数类型类似,Java 浮点类型也有固定的表数范围和字段长度,不受具体操作系统的影响。

浮点型常量有两种表示形式:

  十进制数形式。如:5.12 512.0f .512 (必须有小数点)

    科学计数法形式。如:5.12e2 512E2 100E-2

float:单精度,尾数可以精确到7位有效数字。很多情况下,精度很难满足需求。

double:双精度,精度是float的两倍。通常采用此类型。

定义float类型的变量,赋值时需要以"f"或"F"作为后缀。

Java 的浮点型常量默认为double型。

说明

  • 并不是所有的小数都能可以精确的用二进制浮点数表示。二进制浮点数不能精确的表示0.1、0.01、0.001这样10的负次幂。
  • 浮点类型float、double的数据不适合在不容许舍入误差的金融计算领域。如果需要精确数字计算或保留指定位数的精度,需要使用BigDecimal类。

测试1

        //测试1
        System.out.println(0.1 + 0.2);//0.30000000000000004
        //测试2
        float f1 = 123123123f;
        float f2 = f1 + 1;
        System.out.println(f1); //1.2312312E8
        System.out.println(f2); //1.2312312E8
        System.out.println(f1 == f2); //true

测试2:定义圆周率并赋值为3.14,现有3个圆的半径分别为1.2、2.5、6,求它们的面积。

        double PI = 3.14;//圆周率

        double radius1 = 1.2;
        double radius2 = 2.5;
        int radius3 = 3;

        System.out.println("第一个⚪的面积 " + PI * radius1 * radius1); //4.521599999999999
        System.out.println("第二个⚪的面积 " + PI * radius2 * radius2); //19.625
        System.out.println("第三个⚪的面积 " + PI * radius3 * radius3); //28.259999999999998

测试3:依琳要到美国旅游,可是那里的温度是以华氏度为单位记录的。 它需要一个程序将华氏温度(80度)转换为摄氏度,并以华氏度和摄氏度为单位分别显示该温度

        //℃ = (℉ - 32) / 1.8
        double hua = 80;
        double she = (hua - 32) / 1.8;
        System.out.println("华氏度 " + hua + " 转换摄氏度是 " + she);//26.666666666666664

字符类型:char

char 型数据用来表示通常意义上“字符”(占2字节)

Java中的所有字符都使用Unicode编码,故一个字符可以存储一个字母,一个汉字,或其他书面语的一个字符。

字符型变量的三种表现形式:

        形式1:使用单引号(' ')括起来的单个字符。

             例如:char c1 = 'a'; char c2 = '中'; char c3 = '9';

     形式2:直接使用 Unicode值来表示字符型常量:‘\uXXXX’。其中,XXXX代表一个十六进制整数。

             例如:\u0023 表示 '#'。

             形式3:Java中还允许使用转义字符‘\’来将其后的字符转变为特殊字符型常量。

             例如:char c3 = '\n'; // '\n'表示换行符

转义字符

             说明

             Unicode表示方式

             \n

             换行符

             \u000a

             \t

             制表符

             \u0009

             \"

             双引号

             \u0022

             \'

             单引号

             \u0027

             \\

             反斜线

             \u005c

             \b

             退格符

             \u0008

             \r

             回车符

             \u000d

char类型是可以进行运算的。因为它都对应有Unicode码,可以看做是一个数值。

布尔类型:boolean

boolean 类型用来判断逻辑条件,一般用于流程控制语句中:

          if条件控制语句;

          while循环控制语句;

          for循环控制语句;

          do-while循环控制语句;

boolean类型数据只有两个值:true、false,无其它

          不可以使用0或非 0 的整数替代false和true,这点和C语言不同。

          拓展:Java虚拟机中没有任何供boolean值专用的字节码指令,Java语言表达所操作的boolean值,在编译之后都使用java虚拟机中的int数据类型来代替:true用1表示,false用0表示。——《java虚拟机规范 8版》

        boolean isFlag = true;

        if(isFlag){
            //true分支
        }else{
            //false分支
        }

编码时建议不要这样写:if ( isFlag = = true ),只有新手才如此。关键也很容易写错成if(isFlag = true),这样就变成赋值isFlag为true而不是判断!老鸟的写法是if (isFlag)或者if ( !isFlag)。

标签:基本,Java,double,数据类型,System,println,true,out
From: https://www.cnblogs.com/wdh01/p/17132079.html

相关文章

  • java的guice3.0依赖注入方法
    java的guice3.0依赖注入方法,这里采用的是官方文档的第一种注入方法。jar包下载地址:​​https://github.com/google/guice/releases/download/3.0/guice-3.0.zip​​工程目录......
  • mybatis中遇到的一个小问题【There is no result map named java.lang.Integer in thi
    在使用mybatis的时候,配置一个查询总数的SQL语句,发现提示下面的问题:Thereisnoresultmapnamedjava.lang.IntegerinthisSqlMap百思不得骑姐<selectid="UPP_COUPON_T......
  • java使用hibernate输出mysql数据库代码(个人笔记)
    packagecom.seo.worker.quartz;importjava.util.List;importorg.apache.log4j.Logger;importcom.seo.bean.Proxy;importcom.seo.common.dao.impl.BaseDAO;publicclass......
  • java中的static对象
    /****/packagecom.test.mysql;importorg.hibernate.Session;importorg.hibernate.SessionFactory;importorg.hibernate.Transaction;importorg.hibernate.cfg.Confi......
  • java内部类
    内部类定义:在java中允许一个类定义在另一个类内中,前者叫内部类,后者叫外部类根据内部类定义的位置分为:成员内部类:类定义在方法外;类定义在方法外并且是静态类嵌套类......
  • JAVA高级属性-关键字static
    关键字static(静态)static静态属性是指任何对象都共有的一个属性值,比如,中国人中国家的属性都是中国,这个属性不会随着对象的创建而改变,然而像是收入这种的数据会随着不同......
  • Java接口
    接口定义:抽象描述现实世界中不同事物的共同行为特征--公共的抽象方法接口不是类,接口是一种全新的概念,因此接口和类的区别是什么呢?回答:接口只有行为没有属性,但是接口也有......
  • Java Object类
    Object类含义:Object是所有类的根,及其他的父类或者间接父类都是Object优点:Object的创建是为统一管理所有类缺点:Object类当成参数的类型灵活度太高,相当于没有控制参数的......
  • Java实战(第二版)读后总结与感想
    1. 基本信息Java实战(第二版)ModernJavainAction,2ndEdition[英]拉乌尔–加布里埃尔·乌尔玛(Raoul-GabrielUrma),[意]马里奥·富斯科(MarioFusco),[英]艾伦·米克......
  • java基础语法-包机制
    包机制定义包(为了更好的组织类,java提供了包机制,用于区别类名的命名空间。)包语法的语法格式packagepkg1[.pkg2[.pkg3···]];一半利用公司域名倒置作为包名......