Java入门教程系列【1】Java基本数据类型

简介: Java入门教程系列【1】Java基本数据类型

bug没地儿问? 公众号内回复“加群”,邀你加入微信技术学习群,共同学习!


Java共有八种基本数据类型(可以直接分配内存):六种数字类型(四个整数型:byte、short、int、long,两个浮点型:float、double);一种字符类型(char);还有一种布尔型(boolean)。


注:基本数据类型字长不会因操作系统平台不同而改变


记忆小提示:


  • 位数=字节*8 (因此我们只需要记住所占字节就行了)
  • 四个整数型从小到大依次为(后一种为前一种的2倍):
    byte(1个字节)-> short(2个字节)->int(4个字节)-> long(8个字节)
  • 两个浮点型(后一种为前一种的2倍):
    float(4个字节)-> double(8个字节)
  • 字符型和布尔型:
    char(2个字节)和boolean(1个字节)


四种整数类型:


byte(字节型)


  • byte存储整型数据,占1个字节(8位),有正负,二进制整数
  • 默认值:0
  • 取值范围:-128~ 127
  • 示例: byte b = 28;
  • 包装类:java.lang.Byte


public static void main(String[] args) {
   //一个常量,保存 byte 类型可取的最大值,即 2^7-1
   System.out.println("最大值:"+Byte.MAX_VALUE);
   //一个常量,保存 byte 类型可取的最小值,即 -2^7
   System.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-1
   System.out.println("最大值:"+Short.MAX_VALUE);
   //保存 short 可取的最小值的常量,最小值为 -2^15
   System.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-1
   System.out.println("最大值:"+Long.MAX_VALUE);
   //保持 long 类型的最小值的常量,该值为 -2^63
   System.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^127
   System.out.println("最大值:"+Float.MAX_VALUE);
   //保存 float 类型数据的最小正非零值的常量,即 2^-149
   System.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时会出现报错提示:



image.png



double(双精度型)

  • double数据类型是双精度,占据8个字节(64位),默认值为0.0d
  • 示例:double d = 163.9;
  • 包装类:java.lang.Double


public static void main(String[] args) {
   //保存 double 类型的最大正有限值的常量,最大正有限值为 (2-2^-52)•2^1023
   System.out.println("最大值:"+Double.MAX_VALUE);
   //保存 double 类型的最小正非零值的常量,最小正非零值为 2^-1074
   System.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

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


一些特殊的转义字符

转义字符  含义
\n     换行
\r     回车
\f     换页
\b     退格
\s     空格
\t     tab
\"     双引号
\'     单引号
\      反斜杠
\ddd    八进制字符
\uxxxx   十六进制UNICODE字符


推荐

技术文章:Java中的设计模式小结

源码分享:Javaweb练手项目下载


相关文章
|
存储 Java
# 【Java全栈学习笔记-U1-day02】变量+数据类型+运算符
本篇笔记主要围绕Java全栈学习的第二天内容展开,涵盖了变量、数据类型、运算符以及Scanner类的应用。首先介绍了变量的概念与命名规范,以及如何定义和使用变量;接着详细讲解了Java中的基本数据类型,包括整型、浮点型、字符型、布尔型等,并通过实例演示了数据类型的运用。随后,深入探讨了各类运算符(赋值、算术、关系、逻辑)及其优先级,帮助理解表达式的构成。最后,介绍了如何利用Scanner类实现用户输入功能,并通过多个综合示例(如计算圆面积、购物打折、变量交换及银行利息计算)巩固所学知识。完成相关作业将进一步加深对这些基础概念的理解与实践能力。
328 13
|
9月前
|
存储 Java Go
【Java】(3)8种基本数据类型的分析、数据类型转换规则、转义字符的列举
牢记类型转换规则在脑海中将编译和运行两个阶段分开,这是两个不同的阶段,不要弄混!
388 2
|
9月前
|
Java Go 开发工具
【Java】(2)Java数据类型阐述、基本数据类型的占用和范围、二进制的讲述
数据的一种表示形式。十进制表示满十进一原则。二进制表示满二进一原则。例如:十进制例如:二进制计算机在任何情况下都只能识别二进制。
461 1
|
10月前
|
安全 Java
使用Java多态性进行数据类型转换
以上示范了如何通过多态性来执行安全有效地对于Java对象间相互之间进行正确方式与场合下正确格式与条件限定内对于各个层级关系内部成员及其功能调取与应有操作处理过程,并通过 `instanceof`关键字确保了程序运行期间遵循逻辑合理并符合预设规则条件限定内正常工作流程而无需担忧潜藏风险问题出现可能带来影响结果质量问题情况存在可能。
286 12
|
11月前
|
存储 缓存 算法
Java数据类型与运算符深度解析
本文深入解析Java中容易混淆的基础知识,包括八大基本数据类型(如int、Integer)、自动装箱与拆箱机制,以及运算符(如&与&&)的使用区别。通过代码示例剖析内存布局、取值范围及常见陷阱,帮助开发者写出更高效、健壮的代码,并附有面试高频问题解析,夯实基础。
|
存储 人工智能 JavaScript
Java中的数据类型转换
本文介绍了 Java 中常见的数据类型转换方法,涵盖字符串与整型、长整型、浮点型、布尔型及日期类型的相互转换,并讲解了可能出现的异常和处理方式。
395 0
|
Java C语言 C++
课时9:Java数据类型划分(数据类型划分)
课时9介绍了Java的数据类型划分及其操作。Java数据类型分为基本数据类型和引用数据类型。基本数据类型包括八种:数值型(整形、浮点型)、字符型和布尔型;引用数据类型有数组、类和接口。重点讲解了每种数据类型的默认值、适用场景及选择原则,如整数用int,小数用double,日期时间用Long等。掌握这些内容对编程至关重要。
348 4
课时9:Java数据类型划分(数据类型划分)
课时12:Java数据类型划分(字符型)
课时12介绍了Java中的字符型数据(char),包括字符的定义、与int类型的转换及应用。通过范例展示了如何观察字符、编码转换、大小写字母互转、保存中文字符,以及Java中字符处理的灵活性。字符型使用单引号声明,可与int互相转换,支持Unicode编码,能表示任何文字,包括中文。虽然实际开发中直接操作字符型的情况不多,但理解其特性有助于更好地编程。
368 17
|
存储 传感器 缓存
java变量与数据类型:整型、浮点型与字符类型
### Java数据类型全景表简介 本文详细介绍了Java的基本数据类型和引用数据类型,涵盖每种类型的存储空间、默认值、取值范围及使用场景。特别强调了`byte`、`int`、`long`、`float`、`double`等基本类型在不同应用场景中的选择与优化,如文件流处理、金融计算等。引用数据类型部分则解析了`String`、数组、类对象、接口和枚举的内存分配机制。
608 15
课时14:Java数据类型划分(初见String类)
课时14介绍Java数据类型,重点初见String类。通过三个范例讲解:观察String型变量、"+"操作符的使用问题及转义字符的应用。String不是基本数据类型而是引用类型,但使用方式类似基本类型。课程涵盖字符串连接、数学运算与字符串混合使用时的注意事项以及常用转义字符的用法。
456 9