第2章 Java基础

第2章 Java 基础

Created on 2022/09/12 by wyq.

2.1 标识符、关键字、注释

1、标识符

由字母、数字、下划线、$ 等组成,不能以数字开头。
e.g.
a_12
$_ab

2、关键字

A、数据类型:int、long、short、float、double、byte、char、bollean、class、interface、enum
B、流程控制:if、else、for、do、while、switch、case、default、break、continue、return、try、catch、finally
C、修饰符:public、protected、private、final、void、static、abstract、native
D、动作:import、package、throw、throws、extends、implements、this、supper、new、instanceof
E、保留字:const、goto
PS: 关键字不能作为标识符

3、注释

单行注释: // ...
多行注释: /* ... */
文档注释: /** ... */

2.2 常量与变量

1、常量

指在程序的执行过程中其值始终保持不变的量;
e.g. 常量的定义
final double PI = 3.1415926;
final float C1 = -125e-2f;
转义字符: \n 、\r 、\ 、" 、\t
PS:在定义常量时需要注意以下几点
(1)在定义常量时就需要对其进行初始化;
(2)final 不仅可以修饰基本数据类型的常量,还可以用来修饰对象的引用或方法;
(3)常量名一般都大写。

2、变量

指在程序的执行过程中其值可以发生改变的量;
e.g. 变量的定义
int x = 25;
x = 36;
char c = 'A';

2.3 Java数据类型及转换

1、Java数据类型

(1)、基本数据类型
a、数值类型:整数类型(int、long、short、byte)、浮点类型(float、double)
b、字符类型:char
c、布尔类型:boolean(其值为true/false)
(2)、引用类型
a、类类型:class (e.g. String)
b、接口类型:interface
c、枚举类型:enum
d、数组类型:[]、[][]

2、基本数据类型的转换

当所赋值的数值类型和被变量接收的数据类型不一致时, 就需要进行数据类型转换。
(1)隐式转换(自动转换)
s.t.
A、两种数据类型彼此兼容;
B、目标类型的取值范围大于源数据类型(低级类型数据转换为高级类型数据)
数值类型的自动转换:byte->short->int->long->float->double
字符类型的自动转换:char->int
e.g. 下列表达式选项正确的为()
A、int c = 25.5;
B、float f = 12.5;
C、int i = 'B';
D、byte b = 25.2;
(2)显示转换(强制转换)
当两种数据类型不兼容时,或目标类型的取值范围小于源类型时,自动转换将无法进行,此时就需要进行强制转换。
e.g.
float x = (float) 65.2;

2.4 运算符及表达式

1、一元运算符:-(取负)、++、–
2、二元运算符:+、-、*、/、%
PS:
①对于*、/操作,如果两个操作数均为整型,结果也为整型;如果有一个操作数为浮点型结果则为浮点型;
②Java中,对于%操作,两个操作数可以为浮点型。
3、赋值运算符:=、+=、-=、*=、/=、%=
4、逻辑运算符:&、&&、|、||、!
PS:
①&& 当第一个表达式为假则不再计算后面的表达式;|| 当第一个表达式为真则不再计算后面的表达式。
②短路与(&&)和短路或(||)可以采用最优的计算方式,从而提高程序的执行效率;
5、关系运算符:>、<、>=、<=、==、!=
6、位运算符:&、|、~、^、 <<、>>、>>>
7、条件运算符: ? :
e.g.
int x=30, y=50;
int z = x>y?x:y;
8、运算符优先级
教材P32
添加括号()可以提高表达式的优先级;
添加括号()可以提高表达式的可读性;

2.5 Java 基本语句

1、空语句 // 一个分号 “;”

2、表达式语句

3、复合语句 // { 语句块 }

2.6 选择语句

1、if语句

2、if-else语句

3、if-else if-else语句

在这里插入图片描述

4、switch语句

在这里插入图片描述

PS:
a、switch后面表达式的值只能是 char/Character、byte/Byte、short/Short、int/Integer、String、enum
b、8种基本数据类型对应的包装器类型:
byte(Byte)、char(Character)、short(Short)、int(Integer)、long(Long)、float(Float)、double(Double)、boolean(Boolean)
c、装箱和拆箱
装箱:将基本数据类型转换为其对应的包装器类型(引用类型);
拆箱:将包装器类型转换为其对应的基本数据类型。

2.7 循环语句

1、while语句

while(条件表达式){循环体语句;}
e.g. 计算 1+2+3+…+100;

在这里插入图片描sd述

2、do … while循环

do{循环体语句;} while(条件表达式);
e.g. 输出0到100之间所有的偶数;在这里插入图片描述
PS: 对于do…while循环,不管条件表达式是否成立,循环体都会先执行一次,然后再去判断条件表达式是否成立,若成立循环体继续执行,若不成立循环结束。

3、for循环

for(表达式1;表达式2;表达式3){循环体语句;}
e.g. 计算1-2+3-4+…+99-100 的值

在这里插入图片描述

PS: for循环后的3个表达式均可省略,e.g.
若省略表达式1,则须在for语句前对控制变量进行初始化;
若省略表达式2,须在循环体中判断循环条件是否满足,若不满足须通过break语句跳出循环;
若省略表达式3,须在循环体中对控制变量进行自增或自减。在这里插入图片描述

4、跳转语句

  • break语句,在循环中表示结束当前循环体;
  • continue语句,结束本次循环,根据条件表达式判断是否进行下次须循环。

5、循环的嵌套

e.g. 打印九九乘法表在这里插入图片描述

6、循环的应用

e.g. 计算 1!+2!+3!+…+20!

在这里插入图片描述
*2.8 递归

递归是指方法自己调用自己。
e.g. 计算 g(20)=1!+2!+3!+…+20!
step1: f(x)=x!
step2: g(n)=f(1)+f(2)+…+f(n)在这里插入图片描述

2.9 字符、字符串、数值的输入输出

1、单个字符的输入输出

char c = (char)System.in.read();
e.g.

在这里插入图片描述

2、字符串的输入输出

InputStreamReader is = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(is);
String str = br.readLine();
e.g.

在这里插入图片描述

3、数值的输入输出

Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
double d = sc.nextDouble();
String s = sc.next();
e.g.

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值