java 基本数据类型_Java的八种基本数据类型是哪些

任何编程语言都离不开数据结构,java也不例外,在java的世界里,数据都有自己的数据类型,而且不同的数据类型有不同的特性。

概念

Java 语言是一种强类型语言。第一、所有的变量必须先声明、后使用。第二、指定类型的变量只能接受和声明的类型匹配的类型值。强类型语言的好处是在编译阶段就可以发现源代码的错误,从而保证程序更加健壮。但也有缺点,有时程序运行中难以确定其类型,面对这种业务场景java的强类型就有些死板,索性后期java又推出了泛型弥补这个缺失。两者配合实现动静皆宜。不论如何,强类型语言的优点还是大于劣势的。

af92e284afa5be5fba26abd1b28ed77e.png

又出来一个新名词,泛型?什么是泛型大家先不用着急,后期专门有章节进行学习。

上面的话太官方,学过的同学好理解,没学过的同学不知所云。那我们就通俗点说,在 Java 中存储的数据都是有类型的,而且必须在编译时就确定其类型。Java中有两类数据类型:

2c1ec559e496bc30757f36afd29cf39b.pngJava数据类型

在 Java 的领域里,基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。说白了,基本数据类型变量里存储的是直接放在抽屉里的东西,而引用数据类型变量里存储的是这个抽屉的钥匙,钥匙和抽屉一一对应。

1.1.1 八种基本类型

基本类型(primitive type)这八种厉害了,内置的,直接使用。

37f63d81c824c094fb3cd7146640f6b0.png八种基本类型

注意:声明变量类型时,会给变量分配内存,按类型的所占空间数来分配,那这里就很讲究了,例如:如果年龄应该使用什么类型呢?最佳是byte,0~100,能活100岁很了不起,非常高寿了。当然也有习惯的因素,开发者习惯int age来定义。例如:男女就两个值,习惯选择boolean gender = false。false代表女,true就代表男。

a2772afac75f4523ac7d616be75b7e8f.pngJava

所以记住一点,实际开发尽量用字节空间少的,内存是宝贵的稀缺的就那么点,少占点。

1.1.1 默认初始值

八种基本类型的初始值:

package javase.base;import org.junit.Test;//打印每个基本类型的初始值public class TestInitValue {//八种基本类型初始值//声明成局部变量必须设置初始化值,所以使用成员变量boolean b;char c;byte bt;short s;int i;long l;float f;double d;Integer r1;@Testpublic void test() {System.out.println("布尔类型:"+b);System.out.println("字符类型:" + (int)c);System.out.println("字节类型:" + bt);System.out.println("短整形:" + s);System.out.println("整形:" + i);System.out.println("长整形:" + l);System.out.println("单精度浮点类型:" + f);System.out.println("双精度浮点类型:" + d);System.out.println("包装类型:" + r1);}}执行结果:布尔类型:false字符类型:0字节类型:0短整形:0整形:0长整形:0单精度浮点类型:0.0双精度浮点类型:0.0包装类型:null1.1.1 交换值package javase.basetype;import org.junit.Test;public class TestSwap {@Testpublic void swap() {int a = 10;int b = 20;System.out.println("交换前:a="+a+",b="+b);int t = b; //中间的临时变量,用完就抛弃,过河就拆桥b = a;a = t;System.out.println("交换后:a="+a+", b="+b);}}

当基本数据类型作为参数进行传递时,传递的是值,当有一个方法中的值发生改变,则对另一个方法中的值没有任何影响(各自是独立的)

交换过程:

a2049decaeb9a0df3115a70a1e687a83.png交换过程

编程语言的数据结构,而Java的数据类型有哪些呢,都在上面了,这八种基本数据类型,一定要牢记,这是基础。

cfb083b2d8e24f457211a014949b036c.pngJava11

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值