在配置完 Java 开发环境,并下载 Java 开发工具(Eclipse、IDEA 等)后,就可以编写 Java 程序了,因为这个教程是从头梳理 Java 体系,所以有必要从基础的概念开始谈起。
数据类型
在 Java 中,数据类型只有四类八种
。
- 整数型:byte、short、int、long
byte 也就是字节,1 byte = 8 bits,byte 的默认值是 0 ;
short 占用两个字节,也就是 16 位,1 short = 16 bits,它的默认值也是 0 ;
int 占用四个字节,也就是 32 位,1 int = 32 bits,默认值是 0 ;
long 占用八个字节,也就是 64 位,1 long = 64 bits,默认值是 0L;
所以整数型的占用字节大小空间为 long > int > short > byte
- 浮点型
浮点型有两种数据类型:float 和 double
float 是单精度浮点型,占用 4 位,1 float = 32 bits,默认值是 0.0f;
double 是双精度浮点型,占用 8 位,1 double = 64 bits,默认值是 0.0d;
- 字符型
字符型就是 char,char 类型是一个单一的 16 位 Unicode 字符,最小值是 \u0000 (也就是 0 )
,最大值是 \uffff (即为 65535)
,char 数据类型可以存储任何字符,例如 char a = 'A'。
- 布尔型
布尔型指的就是 boolean,boolean 只有两种值,true 或者是 false,只表示 1 位,默认值是 false。
以上 x 位
都指的是在内存中的占用。
基础语法
- 大小写敏感:Java 是对大小写敏感的语言,例如 Hello 与 hello 是不同的,这其实就是 Java 的字符串表示方式。
- 类名:对于所有的类来说,首字母应该大写,例如
MyFirstClass
。 - 包名:包名应该尽量保证小写,例如
my.first.package
。 - 方法名:方法名首字母需要小写,后面每个单词字母都需要大写,例如
myFirstMethod()
。
运算符
运算符不只 Java 中有,其他语言也有运算符,运算符是一些特殊的符号,主要用于数学函数、一些类型的赋值语句和逻辑比较方面,我们就以 Java 为例,来看一下运算符。
- 赋值运算符
赋值运算符使用操作符 =
来表示,它的意思是把 = 号右边的值复制给左边,右边的值可以是任何常数、变量或者表达式,但左边的值必须是一个明确的,已经定义的变量。比如 int a = 4
。
但是对于对象来说,复制的不是对象的值,而是对象的引用,所以如果说将一个对象复制给另一个对象,实际上是将一个对象的引用赋值给另一个对象。
- 算数运算符
算数运算符就和数学中的数值计算差不多,主要有
java学习精讲 q裙 603835449 群里大佬随时解答问题 欢迎技术交流 算数运算符需要注意的就是优先级问题
,当一个表达式中存在多个操作符时,操作符的优先级顺序就决定了计算顺序,最简单的规则就是先乘除后加减,()
的优先级最高,没必要记住所有的优先级顺序,不确定的直接用 () 就可以了。
- 自增、自减运算符
这个就不文字解释了,解释不如直接看例子明白
- 比较运算符
比较运算符用于程序中的变量之间,变量和自变量之间以及其他类型的信息之间的比较。
比较运算符的运算结果是 boolean 型。当运算符对应的关系成立时,运算的结果为 true,否则为 false。比较运算符共有 6 个,通常作为判断的依据用于条件语句中。
- 逻辑运算符
逻辑运算符主要有三种,与、或、非
下面是逻辑运算符对应的 true/false 符号表
- 按位运算符
按位运算符用来操作整数基本类型中的每个比特
位,也就是二进制位。按位操作符会对两个参数中对应的位执行布尔代数运算,并最终生成一个结果。
如果进行比较的双方是数字的话,那么进行比较就会变为按位运算。
按位与:按位进行与运算(AND),两个操作数中位都为1,结果才为1,否则结果为0。需要首先把比较双方转换成二进制再按每个位进行比较
按位或:按位进行或运算(OR),两个位只要有一个为1,那么结果就是1,否则就为0。
按位异或:按位进行异或运算(XOR),如果位为0,结果是1,如果位为1,结果是0。
按位非:按位进行取反运算(NOT),两个操作数的位中,相同则结果为0,不同则结果为1。
- 移位运算符
移位运算符用来将操作数向某个方向(向左或者右)移动指定的二进制位数。
- 三元运算符
三元运算符是类似 if...else...
这种的操作符,语法为:条件表达式?表达式 1:表达式 2。问号前面的位置是判断的条件,判断结果为布尔型,为 true 时调用表达式 1,为 false 时调用表达式 2。
更多java学习精讲 q裙 603835449 群里大佬随时解答问题 欢迎技术交流
java学习精讲 群里大佬随时解答问题 欢迎技术交流https://jq.qq.com/?_wv=1027&k=WssitsAn