zoukankan      html  css  js  c++  java
  • 数据类型的分类

    在Java语言中数据类型主要分为两大类:

      (1)基本数据类型(记住)

        byte、short、int、long、float、double、boolean、char

      (2)引用数据类型(了解)

        数组、类、接口、枚举、标注

    一、Java语言中描述整数数据的类型有:byte、short、int、long,推荐int类型

      其中byte类型在内存空间中占用1个字节,表示范围是:-2^7 ~2^7-1;

      其中short类型在内存空间中占2个字节,表示范围是:-2^15 ~2^15-1;

      其中int类型在内存空间中占4个字节,表示范围是:-2^31 ~2^31-1;

      其中long类型在内存空间中占8个字节,表示范围是: -2^63 ~2^63-1;

    默认为int类型,所以超过数据类型自身就已经出错了; 

    byte a = 127;

     short b = 250250;

     int c = 45432132123132131313;

    在数据末尾加上L更改默认类型:在Java程序中直接写出的整数数据叫做直接量/字面量/常量,默认为int类型。若希望表达更大的直接量,则在直接量后面加上l或者L,推荐L.

    int d = 250250250250L;

     若描述比long类型还大的数据则使用java.math.BigInteger类型

    问题1:为什么变量赋值会报错?

      int a = 25;
      byte d = a;

    二、Java描述浮点的数据类型有:float和double,推荐double类型

      其中float类型在内存空间占4个字节,叫做单精度浮点数,可以表示7位有效数字,范围:-3.403E38~3.403E38(E38表示10^38)。

      其中double类型在内存空间占8个字节,叫做双精度浮点数,可以表示15位有效数字,范围:-1.798E308~1.798E308。

      Java程序中直接写出的小数数据叫做直接量,默认为double类型,若希望表达float类型的直接量,则需要在直接量的后面加上f或者F。

      float类型可以表示7位有效数据,这些小数数据叫做浮点直接量

      float如果超过7位有效数据,也会返回整数类型类似的错误

    float f1 = 3.1415926;

       避免这类错误的方法就是在数据末尾标注该数据是什么类型?比如:

    float f1 = 3.1415926f;

       因为float最多可以表示7位浮点数,所以第8位浮点数不准确,这时候就应该使用更大的双精度浮点数double类型

    double f1 = 3.1415926;

       因为float类型和double类型存在误差,所以商业开发(涉及金钱的时候)的时候不使用float类型和double类型,若希望实现精确运算则借助java.math.BigDecimal类型

      以下例子可以看出float、double存在误差:

    float f1 = 3.1415926f;
    double f2 = 3.1415926;
    System.out.println(f1+f2);

    三、Java描述布尔的数据类型有:boolean

      Java语言中用于描述真假信息类型有:boolean,数值只有:true 和 false。

      布尔类型在内存空间中所占大小没有明确的规定,可以认为是1个字节。

      声明布尔类型:

    boolean b1 = true;
    boolean b2 = false;

      整数直接量不能转换成boolean类型:

    boolean b2 = false;
    b2 = 2;

    四、Java描述字符的数据类型有:char

      Java语言中用于描述单个字符的数据类型:char类型。如:‘a’、‘中’等。

      其中char类型在内存空间中占2个字节并且没有符号位,可以表示的范围是:0~65535,由于现实生活中很少有数据能够被单个字符描述,因此此后的开发中更多的使用由多个字符串起来组成的字符串,使用String类型加以描述,如“hello”,“奇点”等。

      计算机的底层只识别0和1组成的二进制序列,对于字符‘a’这样的图案来说不满足该规则,因此该数据无法直接在计算机中存储,但现实生活中存在这样的图案数据需要计算机存储,为了使得该数据可以存储起来就可以给该数据指定一个编号,然后将编号存储起来即可,该编号就叫做ASCII。

    char类型定义:

    char ar = 'a';

    char类型演示ASCII码的强制转换:

    char ab = '石';
    char ar = 30707;

    强制转换ASCII码的时候,需要char类型强制转换为int类型并打印,输出后的结果为对应的ASCII码

    System.out.print((int)ab);

    总结:

      1、char类型只能存储 单引号中存放的单个数据

      2、存储多个数据需要使用系统定义以外的String类型

      3、字母有对应的ASCII码,对于的ASCII码输入即可输出对于的字母。

  • 相关阅读:
    第十五章:Android 调用WebService(.net平台)
    第十四章:样式(Style)和主题(Theme)
    第十三章:常用控件下
    第十三章:常用控件上
    第十二章:Android数据存储(下)
    第十一章:Android数据存储(上)
    第十章:Intent详解
    PHP7.X连接SQLSERVER数据库(CENTOS7)
    CentOs install oracle instant client
    softmax
  • 原文地址:https://www.cnblogs.com/xujiaqi/p/13525730.html
Copyright © 2011-2022 走看看