美文网首页吉良吉影
Java 基本数据类型

Java 基本数据类型

作者: 百工之人 | 来源:发表于2020-03-28 14:56 被阅读0次

Java是一种强类型语言,正所谓动漫中都是放大招前都要喊名字。
使用Java变量时也需要声明然后才能使用。
Java中有4大类,8种基本数据类型;相比于吸佳佳(C++),Java的类型长度时固定的长度,不依赖于平台实现。

整型

byte, short, int, long

type bit byte 最大值 最小值
byte Byte.SIZE Byte.BYTES Byte.MAX_VALUE Byte.MIN_VALUE
short Short.SIZE Short.BYTES Short.MAX_VALUE Short.MIN_VALUE
int Integer.SIZE Integer.BYTES Integer.MAX_VALUE Integer.MIN_VALUE
long Long.SIZE Long.BYTES Long.MAX_VALUE Long.MIN_VALUE

表示范围


Java整型范围

通过封装类,查看他们的大小

    // 字节数
    System.out.println(Byte.BYTES); // 1
    System.out.println(Short.BYTES); // 2
    System.out.println(Integer.BYTES); // 4
    System.out.println(Long.BYTES); // 8

    // 位数
    System.out.println(Byte.SIZE); // 8
    System.out.println(Short.SIZE); // 16
    System.out.println(Integer.SIZE); // 32
    System.out.println(Long.SIZE); // 64
一些有趣的写法

浮点型

float, double

有兴趣可以去了解一下[1]

float double
有效范围 6~7位 15位
Java默认浮点类型
后缀 f or F d or D or 不写
华丽的分割线 特殊值 华丽的分割线
正无穷大 Float.POSITIVE_INFINITY Double.POSITIVE_INFINITY
负无穷小 Float.NEGATIVE_INFINITY Double.NEGATIVE_INFINITY
不是一个数字 Float.NaN Double.NaN

浮点类型有三个特殊值:

  • 正无穷大
  • 负无穷小
  • NaN(不是一个数字)

注释:检测一个特定值是不是一个数字 Double.isNaN(x)
不可以直接用==判断

isNaN.png
  • 注意:Double.NaN double类型中非数字类型的值,它不对应于任何数值。Double.NaN不能与包括他自己在内的任何double类型值比较。

Double十六进制了解一下


double2hex.png

布尔型

boolean

Java中有两个boolean类型的值truefalse,用来判断逻辑条件。

  • 注意:整型值和布尔值之间不能相互转换


字符型

char

Java采用的是Unicode字符集,所以一个char类型的大小不是1个字节,是固定的2个字节。

sizeof char

Unicode兼容ASCII码,Unicode也有转移字符。一个char字符也可以用Unicode码表示。

字符串常量可以使用十六进制写法,注意大小写!!!


常量的写法,单引号包裹,小写\u开头,后面接十六进制数字

常用的转义字符


警告:Unicode转义序列会在解析代码之前得到处理

什么意思???


你在代码中可以写Unicode,比如这样:

只要你有耐心,甚至这样:

\u0070\u0075\u0062\u006c\u0069\u0063\u0020\u0073\u0074\u0061\u0074\u0069\u0063\u0020\u0076\u006f\u0069\u0064\u0020\u006d\u0061\u0069\u006e\u0028\u0053\u0074\u0072\u0069\u006e\u0067\u005b\u005d\u0020\u0061\u0072\u0067\u0073\u0029\u0020\u007b\u000a\u000a\u007d

在解析之前处理的意思就是,在编译之前十六进制写法的字符会被转义。当你的代码中有\u时,会被当成十六进制字符处理的。

例如,\user会被当成一个十六进制字符来解析,然后就会报错。

无效的unicode

参考

Java核心技术卷一
Java 基本数据类型
IBM: 您的小数点到哪里去了?
CSDN 浮点数表示
CSDN NaN与NaN比较是否相等


  1. IBM: 您的小数点到哪里去了?

相关文章

网友评论

    本文标题:Java 基本数据类型

    本文链接:https://www.haomeiwen.com/subject/ibojuhtx.html