Java基础学习手记(一)

一、命名规则

在Java中,各种标识符(类名、包名、方法名、变量名)的命名都有一个统一规范

  • 只能数字、有字母、_、$组成,且开头不能是数字
  • 不能是关键字
  • 尽量见名知意
  • 所有类名开头必须大写
  • 所有包名都必须小写
  • 所有常量名必须全部大写,可以用下划线作为分割
  • 遵循驼峰命名法(单词首字母大写,名称开头可以小写)

二、注释

在Java文件中有三种注释

1. 单行注释

一般用于注释内容较少的地方,如代码逻辑注释

// 注释内容

2. 多行注释

用于注释内容较多的地方

/*
注释内容
*/

3. 文档注释

文档注释一般用在类、方法、变量上面,来描述其作用

/**
 * 注释内容
 */

三、基本数据类型

Java有八大基本类型,除了这八大基本类型,其他的类型都是引用类型,并且所有的引用类型的默认值都是null。八大基本类型又分为整型、浮点型、字符型和布尔型

1. 整型

类型 字节 大小范围 默认值
byte 1 -27至27-1(-2(1*8-1)至2(1*8-1)-1) 0
short 2 -215至215-1(-2(2*8-1)至2(2*8-1)-1) 0
int 4 -231至231-1(-2(4*8-1)至2(4*8-1)-1) 0
long 8 -263至263-1(-2(8*8-1)至2(8*8-1)-1) 0

2. 浮点型

类型 字节 大小范围 默认值
float(单精度) 4 1.4E-45至3.4028235E38 0.0
double(双精度) 8 4.9E-324至1.7976931348623157E308 0.0

3. 字符型

类型 字节 大小范围 默认值
char 2 Unicode(0~2^16-1) Unicode(0)

4. 布尔型

类型 字节 大小范围 默认值
boolean 1 false和true false

5. int类型的进制转换

a. 二进制

在Java中,可以直接用前缀0b来表示二进制的int,如

int a = 0b111; // 结果:7

b. 八进制

可以用前缀0来表示八进制的int,如

int a = 011; // 结果:9

c. 十六进制

可以用前缀0x表示十六进制的int,如

int a = 0x11; // 结果:17

6. 进制转换

取值范围大的类型向取值范围小的类型转换需要强制转换,如

int age = (int)3.5; // 通过(int)把浮点型数据强转为int类型

取值范围小的类型可以直接向取值范围大的类型转换,如

double price = 2; // 2明显是int类型,但是可以直接赋值为浮点型

四、运算符

1. 算数运算符

用于数字的运算

符号 名称
+
-
*
/
% 取余

2. 比较运算符

用于数字比较,结果为boolean类型

符号 名称
> 大于
< 小于
>= 大于等于
<= 小于等于
== 等于
!= 不等于

3. 逻辑运算符

符号 名称 逻辑
&& 逻辑与 前后都为true结果才为true
|| 逻辑或 前后只要有一个为true结果则为true
逻辑非 将true变为false,将false变为true

短路现象

A&&B,A为false时结果为false,B不需要再判断

A||B,A为true时结果为true,B不需要再判断

4. 一元运算符

符号 逻辑
++ 自身加一
自身减一

int a = 12;
++a; // 结果:13
a++; // 结果:14
--a; // 结果:13
a--; // 结果:12

5. 赋值运算符

符号 逻辑
= 等于
+= 在自身上加…
-= 在自身上减…

int a = 12;
a+=3; // 结果:15。与a = a + 3;不同,a = a + 3是先运算a + 3再赋值给a,而a+=3则是直接在a上加3
a-=4; // 结果:11。与a = a - 4;不同,a = a - 4是先运算a - 4再赋值给a,而a-=4则是直接在a上减4

6. 按位运算符

符号 名称 逻辑
>> 按位右移 A>>B,将A转为二进制,然后二进制数字向右移动B位数,超出的部分截取掉,剩余的部分转为十进制就是结果
<< 按位左移 A<<B,将A转为二进制,然后二进制数字向左移动B位数,空出来的位置补0,然后转为十进制
>>> 按位带符号位右移 与按位右移不同的是该运算符会带符号位位移
& 按位与 A&B,将A和B转为二进制,右对齐上下比较,两者都为1则为1,否则为0,再转为十进制
| 按位或 A|B,将A和B转为二进制,右对齐上下比较,两者有一个为1则为1,再转为十进制
^ 按位异或 A^B,将A和B转为二进制,右对齐上下比较,两者不同则为1,相同则为0,再转为十进制

7 >> 2; // 结果:1
7 << 2; // 结果:28
-1 >>> 1; // 结果:2147483647
7 & 8; // 结果:0
6 | 7; // 结果:7
7 ^ 8; // 结果:15

7. 三元运算符

A?B:C,判断A的结果,如果A为true,表达式就取B的值,如果是false,就取C的值

1>2?12:23; // 结果:23

注意

System.out.println(1>2?1.2:2);
// 直接输出时,后面两个值属性可以不同,类型取范围大的,结果为2.0
// 赋值的时候后面两个值类型必须相同
int a = 1>2?1.2:2//报错

8. 优先级

优先级 运算符 结合性
1 ()、[]、{} 从左向右
2 !、+、-(正负)、~、++、– 从右向左
3 *、/、% 从左向右
4 +、-(加减) 从左向右
5 <<、>>、>>> 从左向右
6 <、<=、>、>=、instanceof 从左向右
7 ==、!= 从左向右
8 & 从左向右
9 ^ 从左向右
10 | 从左向右
11 && 从左向右
12 || 从左向右
13 ?: 从右向左
14 =、+=、-=、*=、/=、&=、|=、^=、~=、<<=、>>=、>>>= 从右向左

五、转义符

转义字符 意义
\n 换行
\t 横向跳格
\r 回车
\ \
" "

猜你喜欢

转载自blog.csdn.net/jl15988/article/details/121415687
今日推荐