Java 基础概念
注释
注释概念
(1)注释是在程序指定位置添加的说明性信息
(2)简单理解,就是对代码的一种解释
注释分类
注释的使用细节
注释内容不会参与编译和运行,仅仅是对代码的解释说明
不管是单行注释还是多行注释,在书写的时候都不要嵌套
关键字
什么是关键字
关键字:被Java赋予了特定涵义的英文单词
关键字特点
关键字的字母全部小写。
常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观。
class
class:用于(创建/定义)一个类,后面跟随类名
类是Java最基本的组成单元
字面量
告诉程序员:数据在程序中的书写格式
字面量的分类
字面量类型 | 说明 | 举例 |
---|---|---|
整数类型 | 不带小数点的数字 | 666,-88 |
小数类型 | 带小数点的数字 | 13.14,-5. |
字符串类型 | 用双引号括起来的内容 | “HelloWorld”,“黑马程序员” |
字符类型 | 用单引号括起来的,内容只能有一个 | ‘A’, ‘O’,‘我’ |
布尔类型 | 布尔值,表示真假 | 只有两个值:true, false |
空类型 | 一个特殊的值,空值 | 值是:nul |
\t 制表符
在打印的时候,把前面字符串的长度补齐到 8 或者 8 的整数倍。最少补 1 个空格,最多补8个空格
变量
什么是变量呢?
变量:在程序的执行过程中,其值有可能发生改变的量(数据)
变量大的使用场景
当某个数据经常发生改变时,我们也可以用变量存储。当数据变化时,只要修改变量里面记录的值即可
变量的定义格式
数据类型 | 关键字 |
---|---|
整数 | int |
浮点数 | double |
变量的使用方式
(1)输出打印
(2)参与计算
(3)修改记录的值
使用场景
(1)重复使用某个值
(2)某个数据经常发生改变
变量的注意事项
(1)只能存一个值
(2)变量名不允许重复定义
(3)一条语句可以定义多个变量
(4)变量在使用之前一定要进行赋值
(5)变量的作用域范围
数据类型
数据类型的分类
(1)基本数据类型
(2)引用数据类型
基本数据类型
数据类型 | 关键字 | 取值范围 | 内存占用 |
---|---|---|---|
整数 | byte | -128~127 | 1 |
short | -32768~32767 | 2 | |
int(默认) | -2147483648~2147483647(10位数) | 4 | |
long | -9223372036854775808~9223372036854775807 1(19位数) | 8 | |
浮点数 | float | -3.401298e-38 到 3.402823e+38 | 4 |
double(默认) | -4.9000000e-324 到 1.797693e+308 | 8 | |
字符 | char | 0-65535 | 2 |
布尔 | boolean | true,false | 1 |
标识符
什么时标识符
标识符:就是给类,方法,变量等起的名字
标识符命名规则 — 硬性要求
(1)由数字、字母、下划线(_)和美元符($)组成
(2)不能以数字开头
(3)不能是关键字
(4)区分大小写
标识符命名规则 — 软性建议
小驼峰命名法:方法、变量
规范 1:标识符是一个单词的时候,全部小写
规范 2:标识符由多个单词组成的时候,第一个单词首字母小写,其他单词首字母大写
大驼峰命名法:类名
规范 1:标识符是一个单词的时候,首字母大写
规范 2:标识符由多个单词组成的时候,每个单词的首字母daxie
键盘录入
键盘录入介绍
Java 帮我们写好了一个类叫 Scanner,这个类就可以接受键盘输入的数字
步骤一:导包 — Scanner 这个类在哪
步骤二:创建对象 — 表示我要开始用 Scanner 这个类了
步骤三:接受数据 — 真正开始干活了
运算符
运算符和表达式
(1)运算符
对字面量或者变量进行操作的符号
(2)表达式
用运算符把字面量或者变量连接起来,符合 java 语法的式子就可以称为表达式。
不同运算符连接的表达式体现的是不同类型的表达式
算术运算符
符号 | 作用 |
---|---|
+ | 减加 |
- | 乘 |
/ | 除 |
% | 取模、取余 |
类型转换的分类
(1)隐式转换
取值范围小的数值 —> 取值范围大的数值
(2)强制转换
取值范围大的数值 —> 取值范围小的数值
隐式转换(自带类型提升)
把一个取值范围小的数值,转成取值范围大的数据
取值范围(小到大):byte、short、int、long、float、double
隐式转换的两种他提升规则
(1)取值范围小的,和取值范围大的进行运算,小的会先提升为大的,在进行运算
(2)byte short char 三种类型的数据在运算的时候,都会直接先提升为int,然后再进行运算
强制转换
(1)如果把一个取值范围大的数值,赋值给取值范围小的变量。是不允许直接赋值的。如果一定要这么做就需要加入强制转换
(2)格式:目标数据类型 变量名 = (目标数据类型)被强转的数据;
字符串的 “+” 操作
(1)当 “+” 操作中出现字符串时,这个 “+” 是字符串连接符,而不是算术运算符了。会将前后的数据进行拼接,并产生一个新的字符串
(2)连续进行 “+” 操作时,从左到有逐个执行
字符的 + 操作
当字符 + 字符或者字符 + 数字时,会把字符通过 ASCII 码表查询到对应的数字再进行计算
自增自减运算符
基本用法
符号 | 作用 | 说明 |
---|---|---|
++ | 加 | 变量的值加一 |
– | 减 | 变量的值减一 |
注意事项:
++ 和 – 既可以放在变量的前边,也可也放在变量的后边
两种用法
单独使用:++ 和 – 无论是放在变量的前边还是后边,单独写一行结果是一样的
参与计算:
(1)先用后加
(2)先加后用
赋值运算符
分类
符号 | 作用 | 说明 |
---|---|---|
= | 赋值 | int a=10,将 10 赋值给变量 a |
+= | 加后赋值 | a+=b,将 a+b 的值给 a |
-= | 减后赋值 | a-=b,将 a-b 的值给 a |
*= | 乘后赋值 | a*=b,将 a×b 的值给 a |
/= | 除后赋值 | a/=b,将 a/b 的值给 a |
%= | 取余后赋值 | a%=b,将 a%b 的值给 a |
注意事项:扩展的赋值运算符隐含了强制类型转换
关系运算符
(关系运算符/比较运算符)的分类
符号 | 说明 |
---|---|
= | a==b,判断 a 和 b 的值是否相等,成立为 true,不成立为 false |
!= | a!=b,判断 a 和 b 的值是否不相等,成立为 true,不成立为 false |
> | a>b,判断 a 是否大于 b,成立为 true,不成立为 false |
>= | a>=b,判断 a 是否大于等于 b,成立为 true,不成立为 false |
< | a<b,判断 a 是否小于 b,成立为 true,不成立为 false |
<= | a<=b,判断 a 是否小于等于 b,成立为 true,不成立为 false |
注意事项:关系运算符的结果都是 boolean 类型,要么是 true,要么是 false。千万不要把"==“误写成”="。
逻辑运算符
什么是逻辑运算符?
在数学中,一个数据 x,大于 5,小于 15,我们可以这样来进行表示:5<x<15。
在Java中,需要把上面的式子先进行拆解,再进行合并表达。
(1)拆解为:x>5和x<15
(2)合并后:x>5 & x<15
分类
符号 | 作用 | 说明 |
---|---|---|
& | 逻辑与(且) | 并且,两边都为真,结果才是真 |
| | 逻辑或 | 或者,两边都为假,结果才是假 |
^ | 逻辑异或 | 相同为 false,不同为 true |
! | 逻辑非 | 取反 |
短路逻辑运算符
符号 | 作用 | 说明 |
---|---|---|
&& | 短路与 | 结果和&相同,但是有短路效果 |
|| | 短路或 | 结果和|相同,但是有短路效果 |
注意事项:
(1)&|,无论左边 true false,右边都要执行。
&&||,如果左边能确定整个表达式的结果,右边不执行。
&&:左边为 false,右边不管是真是假,整个表达式的结果一定是 false。
||:左边为 true,右边不管是真是假,整个表达式的结果一定是 true 这两种情况下,右边不执行,提高了效率。
(2)最常用的逻辑运算符:&&,||,!
三元运算符
什么是三元运算符?
需求:定义一个变量记录一个整数
(三元运算符/三元表达式)格式
格式:关系表达式? 表达式1: 表达式2;
计算规则
(1)首先计算关系表达式的值
(2)如果值为 true,表达式 1 的值就是运算结果
(3)如果值为 false,表达式 2 的值就是运算结果