Java基础学习手记(一)

一、命名规则

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

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

二、注释

在Java文件中有三种注释

1. 单行注释

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

// 注释内容

2. 多行注释

用于注释内容较多的地方

/*
注释内容
*/

3. 文档注释

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

/**
 * 注释内容
 */

三、基本数据类型

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

1. 整型

类型字节大小范围默认值
byte1-27至27-1(-2(1*8-1)至2(1*8-1)-1)0
short2-215至215-1(-2(2*8-1)至2(2*8-1)-1)0
int4-231至231-1(-2(4*8-1)至2(4*8-1)-1)0
long8-263至263-1(-2(8*8-1)至2(8*8-1)-1)0

2. 浮点型

类型字节大小范围默认值
float(单精度)41.4E-45至3.4028235E380.0
double(双精度)84.9E-324至1.7976931348623157E3080.0

3. 字符型

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

4. 布尔型

类型字节大小范围默认值
boolean1false和truefalse

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回车
\\
""
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

会功夫的李白

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

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

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

打赏作者

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

抵扣说明:

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

余额充值