news 2026/10/26 1:52:59

【无标题】注意

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【无标题】注意

### 标识符

规则:字母、数字、`_`、`$`;**不能以数字开头,不能是关键字,区分大小写**
命名规范:

- 类名:大驼峰 `HelloWorld`
- 变量 / 方法:小驼峰 `studentName`
- 常量:全大写,下划线分隔 `MAX_VALUE`

>
> ❗易错:`1name` 非法;`$name` 语法允许但不推荐;`class`、`static` 是关键字不能用作变量名

### 2. 数据类型

Java 是**强类型语言**,变量必须声明类型。分为**基本类型(8 个)** 和**引用类型**

#### 基本数据类型

表格

| 类型 | 字节 | 取值 | 默认值 |
| --- | --- | --- | --- |
| byte | 1 | -128 ~ 127 | 0 |
| short | 2 | -32768 ~ 32767 | 0 |
| int | 4 | 常用整型 | 0 |
| long | 8 | 长整型,字面量加`L/l` | 0L |
| float | 4 | 单精度,字面量加`F/f` | 0.0F |
| double | 8 | 双精度(小数默认 double) | 0.0 |
| char | 2 | 0~65535,存 Unicode | `\u0000` |
| boolean | 1 | true/false | false |

>
> ❗易错点
>
>
> 1. `long num = 10000000000;` 报错!整数字面量默认 int,超大数字必须写`10000000000L`
> 2. `float f = 3.14;` 报错!小数默认 double,必须写`3.14F`
> 3. `char c = 'ab';` 错误,char 只能存**单个字符**,单引号;双引号是 String(引用类型)
> 4. boolean**不能和数字转换**,不存在 0=false、非 0=true(C 语言习惯坑)
> 5. 浮点数不要直接用`==`比较!精度丢失 `0.1+0.2 != 0.3`

#### 引用类型

类、接口、数组、String。默认值:`null`

>
> 基本类型存**值**在栈;引用类型栈存地址,对象本体在堆。

### 3. 类型转换

1. 自动转换(小→大):`byte→short→int→long→float→double`
2. 强制转换(大→小):`int a = (int)3.9;` 直接截断小数,**不是四舍五入**

>
> ❗易错
>
>
> - 强制转型可能溢出:`byte b = (byte)130;` 结果是 -126
> - `short s = 1; s = s + 1;` 编译报错:`s+1`自动提升为 int,需要强转 `s = (short)(s+1)`;`s+=1` 自带强制转换不会报错!

### 4. 运算符

- `++ / --`:前置先自增,后置先取值

```
int a=2;
int b = a++; // b=2,a=3
int c = ++a; // c=4,a=4
```

>
> ❗易错:`i = i++;` 结果 i 不变(面试经典坑)

- `&&` 短路与,`||`短路或:前面能确定结果,后面代码**不执行**

```
int x=2;
false && (++x>0); // ++x不会执行,x还是2
```

>
> `&`和`|`不短路,两边都会执行

- `==`:
- 基本类型:比较**值**
- 引用类型:比较**地址**,不是内容!

>
> String 比较内容必须用 `.equals()`

## 二、流程控制

### 1. if-else

>
> ❗易错:`if(a=5)` 编译报错!Java 中 if 条件必须 boolean,不能写赋值(C 语言坑)

### 2. switch

支持:`byte,short,int,char`,Java5 + 支持枚举,Java7 + 支持 String

>
> ❗易错
>
>
> - 不加`break`会**穿透**,继续执行后面 case
> - case 后面只能是常量,不能写变量;default 可以放任意位置,但建议写最后

### 3. 循环 for /while/do-while

- do-while:**至少执行 1 次**

>
> ❗易错:
>
>
> 1. for 循环定义在 () 内的变量,循环结束就失效
> 2. 死循环:`while(true)`;注意`;` 陷阱 `while(true);{}` 分号代表循环体为空
> 3. `break`跳出当前循环;`continue`跳过本次循环剩余代码,进入下一次

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/26 1:52:58

Linux FFmpeg深度解析之avformat_find_stream_info调用流程与实战(二)

简介: CSDN博客专家、《Android系统多媒体进阶实战》作者 博主新书推荐:《Android系统多媒体进阶实战》🚀 Android Audio工程师专栏地址: Audio工程师进阶系列【原创干货持续更新中……】🚀 Android多媒体专栏地址&a…

作者头像 李华
网站建设 2026/10/26 1:50:31

十分钟私有化部署:wewe-rss 公众号 RSS 订阅工具使用指南

十分钟私有化部署:wewe-rss 公众号 RSS 订阅工具使用指南 【免费下载链接】wewe-rss 🤗更优雅的微信公众号订阅方式,支持私有化部署、微信公众号RSS生成(基于微信读书) 项目地址: https://gitcode.com/GitHub_Trendi…

作者头像 李华
网站建设 2026/10/26 1:50:08

MediaCrawler 采集教程:小红书抖音B站数据抓取指南

MediaCrawler 采集教程:小红书抖音B站数据抓取指南 【免费下载链接】MediaCrawler-new 项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawler-new MediaCrawler 是基于 Python 的开源数据采集框架,覆盖小红书、抖音、快手、B站、微博…

作者头像 李华