JavaSE第四步 —— 常量和final、基本数据类型

一、常量
在Java语言中,通常使用关键字final来对常量进行定义。常量一旦被定义就不能被
改变如果你说你定义了一个数组,并且使用了final关键字进行修饰,但是你可以对数组中
存储的值进行相应的修改,那是因为final修饰的是数组,而并非是数组里的值,数组的地
址是不会发生改变的。
常量的声明格式:
final type varName = value;
通常来说:
①、1、2、3、’a’、’b’、true、false、helloWorld等被统称为字符常量
②、而使用final关键字修饰的PI等内容则是被我们称之为符号常量
对于使用这些常量来说,最好还是遵循相应的命名规则,这会是的我们在开发的过程中,
给予我们极大的帮助
下方是对变量和常量的相应命名规范的描述:
变量和常量命名规范
所有变量、方法、类名:见名知义
类成员变量:首字母小写和驼峰原则: monthSalary
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则: Man, GoodMan
方法名:首字母小写和驼峰原则: dog(),dogRun()

二、基本数据类型
Java数据类型分为两大类:引用数据类型和基本数据类型
引用数据类型的大小统一为4个字节,记录的是其引用对象的地址
基本数据类型通常有8个:
数值型:byte、short、int、long
浮点型:float、double
字符型:char
布尔型:boolean

三、数值型之整型
整型

类型 占用存储空间 表数范围
byte 一个字节 -128~127
short 两个字节 -32768~32767
int 四个字节 -2147483648~2147483647
long 八个字节 -2^63 ~ 2^63-1

四、Java 语言整型常量的四种表示形式
十进制整数,如:99, -500, 0
八进制整数,要求以 0 开头,如:015
十六进制数,要求 0x 或 0X 开头,如:0x15
二进制数,要求0b或0B开头,如:0b01110011

注:如果你所写的是long类型的常量,那么你就需要在相应的常量后边填写上L或l

五、浮点型

类型 占用存储空间 表数范围
float 四个字节 -3.403E38~3.403E38
double 八个字节 -1.798E308~1.798E308

float类型又被称作单精度类型,尾数可以精确到7位有效数字。

double表示这种类型的数值精度约是float类型的两倍,又被称作双精度类型,绝大部分应用程序都采用double类型。

Java浮点类型常量有两种表示形式
(1) 十进制数形式: 例: 3.14 314.0 0.314
(2) 科学记数法形式 例:3.14e0 3.14E2 3.14E-1
浮点型不精确,不要用于比较
浮点数 存在舍入误差,数字不能精确表示。浮点数适合普通的科学和工程计算,精度足够;但不适合精度要求非常高的商业计算,这时候要使用BigDecimal进行运算和比较。
浮点常量默认类型是double,要改成float可以后面加F或f
float类型的数值有一个后缀F或者f,没有后缀F/f的浮点数值默认为double类型。也可以在浮点数值后添加后缀D或者d, 以明确其为double类型。

注意:浮点数不能用来进行比较

六、字符
最初的字符集就是ASCII码,是所有字符集的老祖宗

字符的别称
转义字符
转义符 含义 Unicode值
\b 退格(backspace) \u0008
\n 换行 \u000a
\r 回车 \u000d
\t 制表符(tab) \u0009
\“ 双引号 \u0022
\‘ 单引号 \u0027
\ 反斜杠 \u005c

注意:String类,其实是字符序列(char sequence), 本质是char字符组成的数组。

七、布尔值
boolean类型中有两个常量,true和false
在内存中占一个字节或4个字节,不可以使用 0 或非 0 的整数替代true和false,这点和C语言不同。

注意:JVM规范指出boolean当做int处理,也就是4字节,boolean数组当做byte数组处理,这样我们可以得出boolean类型占了单独使用是4个字节,在数组中是确定的1个字节。

针对使用布尔值进行判断的情况:
千万要注意以下几点:
请不要这样写:if ( flag = = true ),这是刚入门的菜鸟(就是博主这类新手)经常犯的错误。因为这样很容易就错写成if(flag=true),这样就变成赋值flag为true而非判断!
最佳写法是if ( flag )或者if ( !flag)

posted @ 2024-02-16 00:03  从零开始的学习之路  阅读(52)  评论(0)    收藏  举报