记忆小提示:

  • 位数=字节*8 (因此我们只需要记住所占字节就行了)

  • 四个整数型从小到大依次为(后一种为前一种的2倍):

    byte(1个字节)-> short(2个字节)->int(4个字节)-> long(8个字节)

  • 两个浮点型(后一种为前一种的2倍):

    float(4个字节)-> double(8个字节)

  • 字符型和布尔型:

    char(2个字节)和boolean(1个字节)

  • 需要相关资料可以加ssmp54996

四种整数类型:  相关资料

byte(字节型)

  • byte存储整型数据,占1个字节(8位),有正负,二进制整数

  • 默认值:0

  • 取值范围:-128~ 127

  • 示例: byte b = 28;

  • 包装类:java.lang.Byte

public static void main(String[] args) {//一个常量,保存 byte 类型可取的最大值,即 2^7-1System.out.println("最大值:"+Byte.MAX_VALUE);//一个常量,保存 byte 类型可取的最小值,即 -2^7System.out.println("最小值:"+Byte.MIN_VALUE);//用于以二进制补码形式表示 byte 值的位数System.out.println("位数:"+Byte.SIZE);}

结果为:

最大值:127
最小值:-128
位数:8

注:一个英文字母或一个阿拉伯数字就是一个字符,占用一个字节;一个汉字就是两个字符,占用两个字节

short(短整数)  相关资料

  • short存储整型数据,占据2个字节(16位),有正负,二进制整数

  • 默认值:0

  • 取值范围:-32768(-2^15)~ 32767(2^15 - 1)

  • 示例:short s = - 2768;

  • 包装类:java.lang.Short

public static void main(String[] args) {//保存 short 可取的最大值的常量,最大值为 2^15-1System.out.println("最大值:"+Short.MAX_VALUE);//保存 short 可取的最小值的常量,最小值为 -2^15System.out.println("最小值:"+Short.MIN_VALUE);//用来以二进制补码形式表示 short 值的位数System.out.println("位数:"+Short.SIZE);}

结果为:

最大值:32767
最小值:-32768
位数:16

注:当数据不大时,用short类型可以节省空间

int(整数型)   相关资料

  • int存储整数类型,占据4个字节(32位),有正负,二进制整数

  • 默认值:0

  • 取值范围:-2147483648(-2^31)~ 2 147 483 647(2^31 - 1)

  • 示例:int i = 6870000;

  • 包装类:java.lang.Integer

public static void main(String[] args) {//值为 2^31-1 的常量,它表示int类型能够表示的最大值System.out.println("最大值:"+Integer.MAX_VALUE);//值为-2^31 的常量,它表示int类型能够表示的最小值System.out.println("最小值:"+Integer.MIN_VALUE);//用来以二进制补码形式表示int值的比特位数System.out.println("位数:"+Integer.SIZE);}

结果为:

最大值:2147483647
最小值:-2147483648
位数:32

注:java中默认的整数类型是int,如果要定义为float,可在数字后面加上l或者L,不加也可以,但它会自动把int数据转换为float型,如下:

float l= 7;
System.out.println("l的值为:"+l);

结果为:

l的值为:7.0

long(长整型)     相关资料

  • long存储整数类型,占据8个字节(64位),有正负,二进制整数

  • 默认值:0L

  • 取值范围:-9223372036854775808(-2^63)~9223372036854775807(2^63 -1)

  • 示例:long qing = 680000000;或者long qing = 680000000l;

  • 包装类:java.lang.Long

public static void main(String[] args) {//保持 long 类型的最大值的常量,该值为 2^63-1System.out.println("最大值:"+Long.MAX_VALUE);//保持 long 类型的最小值的常量,该值为 -2^63System.out.println("最小值:"+Long.MIN_VALUE);//用来以二进制补码形式表示 long 值的位数System.out.println("位数:"+Long.SIZE);
}

结果为:

最大值:9223372036854775807
最小值:-9223372036854775808
位数:64

两种浮点类型:    相关资料

float(浮点型)

  • float 数据类型是单精度,占据4个字节(32位),默认值为0.0f

  • 包装类:java.lang.Float

public static void main(String[] args) {//保存 float 类型的最大正有限值的常量,即 (2-2^-23)•2^127System.out.println("最大值:"+Float.MAX_VALUE);//保存 float 类型数据的最小正非零值的常量,即 2^-149System.out.println("最小值:"+Float.MIN_VALUE);//表示一个 float 值所使用的位数System.out.println("位数:"+Float.SIZE);}

结果为:

最大值:3.4028235E38
最小值:1.4E-45
位数:32

注:java定义浮点型常量时,默认为double型,如果要声明为float型,则需要在数字后面加上f或者F,如:

float f = 1.89f --是正确的定义

float f = 1.89 --是错误的定义

(如下图所示)

当没有在数字后添加f时会出现报错提示:

添加了f之后错误消失:

double(双精度型)   相关资料

  • double数据类型是双精度,占据8个字节(64位),默认值为0.0d

  • 示例:double d = 163.9;

  • 包装类:java.lang.Double

public static void main(String[] args) {//保存 double 类型的最大正有限值的常量,最大正有限值为 (2-2^-52)•2^1023System.out.println("最大值:"+Double.MAX_VALUE);//保存 double 类型的最小正非零值的常量,最小正非零值为 2^-1074System.out.println("最小值:"+Double.MIN_VALUE);//用于表示 double 值的位数System.out.println("位数:"+Double.SIZE);
}

结果为:

最大值:1.7976931348623157E308
最小值:4.9E-324
位数:64

注:double类型定义变量时,数字后面可不加d,默认为double型数据

字符类型:

char(字符型)   相关资料

  • char 数据类型可以储存任何字符,占据2个字节(16位)

  • 取值范围:'\u0000'(0) ~ '\uffff'(65535)

  • 示例:char qing='c';或者char qing='汉';

  • 包装类:java.lang.Character

public static void main(String[] args) {//此字段的常量值是 char 类型的最大值,即 '\uFFFF'System.out.println("最大值:"+(int)Character.MAX_VALUE);//此字段的常量值是 char 类型的最小值,即 '\u0000'System.out.println("最小值:"+(int)Character.MIN_VALUE);//用来以无符号二进制形式表示 char 值的位数System.out.println("位数:"+Character.SIZE);}

结果为:

最大值:65535
最小值:0
位数:16

注:需要用单引号括起来,只能为单个字符

布尔型:

boolean(布尔型)   相关资料

  • boolean只有两个取值:true(真)和 false(假),默认值是 false,仅占1个字节

  • 示例:boolean b=true;

  • 包装类:java.lang.Boolean

注:不可以用0和非0数代替true和false

基本数据类型的自动转换:   相关资料

byte -> short

char -> int -> long

int -> float

float -> double

long -> double

注:占字节少的可转换为占字节大的,反之则会失去数据精度

一些特殊的转义字符     相关资料

可以通过扫一扫领取 【java】

Java入门教程系列【1】Java基本数据类型 小白必入系列相关推荐

  1. Java入门教程笔记(一)

    Java入门教程笔记(一) Java入门教程笔记系列仅适用于有过一定编程基础的人学习java时进行参考和借鉴 不适用于作为入门级教程 以下凡"小黑窗"都是表示"DOS命令 ...

  2. java 入门程序_自学 Java 怎么入门?

    自学Java的确不易,但是有一份好的学习路线图,跟着路线图来一步一步踏踏实实的学下来,相信你也一定可以成为大牛. 分享给大家一套学习线路图,内容还是很全面的,每个阶段需要学习的内容罗列的也很清楚,这样 ...

  3. Java入门教程笔记(三)

    Java入门教程笔记(一) Java入门教程笔记(二) 对前两份笔记的补充: static关键词: 被static关键词修饰的变量或者方法可以不依赖于某个特定的对象存在 被static关键词修饰的方法 ...

  4. java 四字节uid,Java入门教程-序列化版本号serialVersionUID的作用

    原标题:Java入门教程-序列化版本号serialVersionUID的作用 Java序列化是将一个对象编码成一个字节流,反序列化将字节流编码转换成一个对象.序列化是Java中实现持久化存储的一种方法 ...

  5. java培训教程分享:Java中怎样将数据对象序列化和反序列化?

    本期为大家介绍的java培训教程是关于"Java中怎样将数据对象序列化和反序列化?"的内容,相信大家都知道,程序在运行过程中,可能需要将一些数据永久地保存到磁盘上,而数据在Java ...

  6. java培训教程分享:Java编写软件代码自动提示功能

    本期的java培训教程分享主要是介绍的java编写软件代码的一个自动提示功能,很多零基础和初学java的同学们对这一块还不是很了解,Eclipse for android 实现代码自动提示智能提示功能 ...

  7. java培训教程分享:Java中用户如何自定义异常?

    我们在学习java技术的时候应该有了解过,在java中是定义了很多的异常类的,虽然这些大量异常类可以帮助我们描述编程时出现的大部分异常情况,但是在程序开发中有时可能需要描述程序中特有的异常情况,例如在 ...

  8. 清华大学计算中心培训部-技术分享:JAVA入门:简单的Java程序

    JAVA入门:简单的Java程序 清华大学计算中心培训部-技术分享:http://training.tsinghua.edu.cn/html/jishuyuandi/2009/0302/27.html

  9. acm新手小白必看系列之(1)——二维数组及结构体精讲附带例题

    *acm新手小白必看系列之(1)--二维数组及结构体 ** c++准备工作** (可能小白像我一样也是学习的c语言) 万能头文件,放在第一行 #include<bits/stdc++.h> ...

最新文章

  1. 2020-08-23 W7电脑锁屏后,能让电脑处于运行状态吗?
  2. 肯尼亚政府部署RFID系统进行车辆识别登记
  3. qml dockwidget窗口停靠
  4. jQuery的push
  5. PostgreSQL11 data数据库目录迁移
  6. POJ 3154 Graveyard【多解,数论,贪心】
  7. 算法5-7:区间检索
  8. Async注解使用及源码分析
  9. tolua unity 报错_关于LUA+Unity开发_toLua篇【二】
  10. 自动化测试方案设计和实现
  11. 计算机windows错误恢复,为什么windows错误恢复?
  12. Java标准I/O流编程一览笔录
  13. 什么是数据分析,主要有什么目的,数据分析的处理流程是什么?
  14. PDF压缩文件怎么压缩最小?用迅读PDF大师,一键无损压缩
  15. 怎么把png转换jpeg?png如何转其他格式?
  16. Yarn Web页面 8088 端口在Windows浏览器无法访问
  17. 安装nginx和zookeeper
  18. Electron-开发第一个桌面应用
  19. RubyProgramming:向Ruby之父学程序设计pdf
  20. Chrome中的硬件加速合成

热门文章

  1. Python使用matplotlib可视化箱图、seaborn中的boxplot函数可视化分组箱图、在箱图中添加抖动数据点(Dot + Box Plot)
  2. R语言使用ggplot2包和ggQC包可视化帕累托图(Pareto chart)
  3. catboost是什么?相对于xgboost以及lightgbm有什么优势?如何使用randomSearchCV和Catboost进行组合获取最优参数组合?
  4. java.util.date_关于java中java.util.Date(急)
  5. 新版IntelliJ IDEA Web项目配置完整流程
  6. 上升沿_不懂上升、下降沿的我,高兴惨了!
  7. c调用c++ qt_C++中是如何调用C接口的?
  8. python imgaug 图片增强
  9. 原生ajax XMLHTTPRequest()
  10. python根据文件名或后缀名遍历文件夹下所有文件或图片的路径,并计算文件行数