【Java软件工程师从0到1】- 定义基本数据类型及运算

文章目录

一 - 前言

二 - 基本数据类型

 1 - 数据存储规则

2 - 创建变量

3 - 常量范围

4 - 操作符

5 - 部分注意事项

三 - 结尾


一 - 前言

介绍:大家好啊,我是不良战士。

社区:(欢迎大家加入)日常打卡、学习交流、资源共享的知识星球。

更新时间:每周两更。

本文适合于刚入门的小伙伴,以及基础不是很扎实的小伙伴。

我会很细致的对基本类型的讲解,欢迎小伙伴多多支持。

话不多说,进入正题吧!


二 - 基本控制结构

在Java中,共有8大基本数据类型,其中包括(括号中代表它占用多少个字节):

  • 整数类型:byte(1),short(2),int(4),long(8)
  • 小数类型:float(4),double(8)
  • 字符类型:char(2)
  • 布尔类型:boolean(1)

除了这8大基本数据类型及它们的数组形式,其他数据都是对象类型。

字节是什么意思?计算机中使用0和1存储数据,每个0或1代表一个bit,每8个bit就能代表一个字节。

有学过C的小伙伴应该会发现,Java中的char类型是占用2个字节,这个等详解String类型时会将到。

 1 - 数据存储规则

当然,一堆0和1不能代表各个数据类型,所以要有每个数据存储的规则

  • 比如整数类型使用第一位bit代表正负数,其他位代表着它的数据大小,相当于2进制与10进制的转换。
  • 字符类型的存储规则同整数类型,它无需正负,所以它的第一位也是存放数据,相当于无符号整型,但是Java中不支持定义无符号整型。
  • 小数型的规则相对复杂,大致就是有一位bit控制符号,有多位bit控制数据大小,还有多位控制小数点的位置,由于小数点像是浮动的,所以我们也叫它为浮点类型。

只凭三言两语无法说的太细节,等我们讲解到计算机组成原理时,会作更详细的说明。

但其实它们的真实占用字节与之在JVM的哪块内存区域有关的,我们之后也会详细讲解。

布尔类型是代表真假的类型,它在Java中只有两个值,true和false,代表着真与假。

而如果是学过C的小伙伴都知道,C中0代表假、非0代表真,并且C中的布尔类型也是可以进行操作的。

但是Java为了让操作更加规范,将真假封装成了这两个常量。

2 - 创建变量

格式: 变量类型 变量名 = 常量; 这是在创建的同时初始化,也可以只创建一个变量,如 变量类型 变量名;

变量名命名规则如下:

1.必须以字母、下划线、或者美元符$开头;
①以美元符$ 开头命名的变量虽然能够编译通过但是不建议使用;
②中文也可以作为命名开头且编译也能通过,但是不建议使用。
2.除开头外后面的部分可以有字母、下划线、美元符$以及数字组成;
3.虽然变量名不限制长度,但能表达清楚命名的含义即可;
4.变量名不可以和java的关键字冲突;

3 - 常量范围

byte,1字节,8位,最大存储数据量是255,存放的数据范围是-128~127之间。

short,2字节,16位,最大数据存储量是65536,数据范围是-32768~32767之间。

int,4字节,32位,最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1。

long,8字节,64位,最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1。

float,4字节,32位,数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F。

double,8字节,64位,数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加。

char,2字节,16位,存储Unicode码,用单引号赋值。

boolean,只有true和false两个取值

由于long比int型的字节数更多,存储的数据更大,因此才会有特殊标记,否则如果数据量过大会出现截断。(在计算机组成原理解释)

float同理,因为小数是用有限个bit组成,因此不能确保绝对精确,如果直接将double类型赋值给double会导致失去精度,因此也要有特殊标记。

有了命名规则和常量规则就可以符合规范的创建对象了!

4 - 操作符

操作符还算多,这里只做汇总,建议看这篇粗略了解一下:Java操作符。

算数运算符:+,-,*,/,%,++,- -,=,+=,-=, *=,/=,%=
关系运算符:>,<,>=,<=,==,!=,instanceof
逻辑运算符:&,|,!,^,&&,||
位运算符:&,|,~,^,>>,<<,>>>,>>=,<<=
三元运算符:?:

位运算符暂时只作为了解,当需要写出高效算法时可以使用它提高效率,以后我也会讲解一些使用位运算进行的算法,但比较晦涩难懂,暂时不做过多介绍。

5 - 部分注意事项

1. 比如byte,short,char 类型混合运算时,Java会先将其转换成 int 类型再做运算,因此运算结果也是int类型,所以我们需要注意类型转换。如:

2. float、double都是有限的bit存储小数型数据,因此很多时候,它的操作结果并不尽如人意,比如:

3. 若混合运算中有浮点型,都会先转换成double再运算。

4. 注意一点,整数与整数进行除法运算,不会自动转换成浮点型,因此我们一开始就让一个变量转换成浮点型,才可以算出真正的结果。


三 - 结尾

感谢你看到这里,如果感觉内容不错的话请点赞支持一下!

如果小伙伴对我的讲解有疑问,欢迎评论区讨论。

  • 35
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 27
    评论
评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hitzaki辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值