Java是一种强类型语言,每个变量都必须声明其数据类型。 Java的数据类型可分为两大类:基本数据类型(primitive data type)和引用数据类型(reference data type)。
Java中定义了3类8种基本数据类型数值型- byte、 short、int(默认)、 long、float、 double(默认)
字符型- char
布尔型-boolean
引用数据类型的大小统一为4个字节,记录的是其引用对象的地址!
整型用于表示没有小数部分的数值,它允许是负数。整型的范围与运行Java代码的机器无关,这正是Java程序具有很强移植能力的原因之一。与此相反,C和C++程序需要针对不同的处理器选择最有效的整型。
表2-4整型数据类型
Java 语言整型数据的四种表示形式
二进制(binary):以0b开头,0b01010101
八进制(octal):以0开头,015
十进制(decimal):默认,99
十六进制(hexadecimal):0x开头,0x1F
表2-5浮点型数据类型
Java浮点类型有两种表示形式十进制数形式,例如:3.14 314.0 0.314
科学记数法形式,如314e2 314E2 314E-2
浮点类型float,double的数据不适合在不容许舍入误差的金融计算领域。如果需要进行不产生舍入误差的精确数字计算,需要使用BigDecimal类。
字符型
char字符型在内存中占2个字节,在Java中使用单引号来表示字符。例如'A'是一个字符,它与"A"是不同的,"A"表示含有一个字符的字符串。
字符类型char是基本数据类型,它是character的缩写。一个char保存一个Unicode字符。
char 类型用来表示在Unicode编码表中的字符。Unicode编码被设计用来处理各种语言的文字,它占2个字节,可允许有65536个字符,他们通常用从’\u0000’到’\uFFFF’之间的十六进制值来表示。
Java允许使用转义字符‘\’加上普通字符转义为别的含义,例如:‘\n’不再表示本意n,表示换行
运算符(operator)
计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操作变量。
算术运算符
算术运算符中+,-,*,/,%属于二元运算符,二元运算符指的是需要两个操作数才能完成运算的运算符。其中的%是取模运算符,就是我们常说的求余数操作。
二元运算符的运算规则:
整数运算:
1. 如果两个操作数有一个为Long, 则结果也为long。
2. 没有long时,结果为int。即使操作数全为short,byte,结果也是int。
浮点运算:
3. 如果两个操作数有一个为double,则结果为double。
4. 只有两个操作数都是float,则结果才为float。
取模运算:
1.其操作数可以为浮点数,一般使用整数,结果是“余数”,“余数”符号和左边操作数相同,如:7%3=1,-7%3=-1,7%-3=1。
算术运算符中++,--属于一元运算符,该类运算符只需要一个操作数。
关系运算符
对于布尔类型boolean,永远只有true和false两个值。
布尔运算是一种关系运算,包括以下几类:比较运算符:>,>=,
与运算 &&
或运算 ||
非运算 !
位运算符
三元运算符
Java还提供一个三元运算符 boolean-expression ? value0 : value1; 它根据第一个布尔表达式的结果,分别返回后续两个表达式之一的计算结果。
字符串连接符
“+”运算符两侧的操作数中只要有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串然后再进行连接。
从Java 13开始,字符串可以用"""..."""表示多行字符串(Text Blocks)了。举个栗子:
public class Main {
public static void main(String[] args) {
String s = """
SELECT * FROM
users
WHERE id > 100
ORDER BY name DESC
""";
System.out.println(s);
}
}
最后,由于多行字符串是作为Java 13的预览特性(Preview Language Features)实现的,编译的时候,我们还需要给编译器加上参数:
javac --source 13 --enable-preview Main.java
运算优先级
在Java的计算表达式中,运算优先级从高到低依次是:()
! ~ ++ --
* / %
+ -
<< >> >>>
&
|
+= -= *= /=
----------------------------------------------------------------------------------------------
以上内容来源于网络,自学已用