该用户从未签到
|
1. java 的方法Method (函数 Function), 功能, 动作
& d4 }" h! Q) L5 j2 C4 x 1) 方法就是函数: y=f(x)=3x+6;1 Z7 J- E3 W' L( w6 @
2) 方法的语法: Y( ?" O- c8 W7 o' Q( J' Y; w# Z
(修饰词)(返回值类型)(方法名)(参数列表){
! K* A w( n' h; d& w //方法体6 q1 i5 \; J& b
}
]& t% Y( Y* h. b1 @& {* i# a$ x B. { public static void main(String[] args){}' N* |& B+ A1 n1 T1 J
如:
( Z) v- H8 U+ S) r, b public static int f(int x){5 A, V( \2 A6 b+ c) I4 x" X
int y = 3 * x + 4;' M2 g$ i# m' Z
return y;9 y5 C# w6 @9 Z* h6 o
}
; r% y" P1 r2 a" `) ^ 4) 如果有返回值定义就必须有return语句, 返回和返回值类型3 A( T- {( o$ ]3 f q2 R6 \3 b
兼容的数据, _/ {: H7 a( f( {! Q% M4 _' ^" E1 G# _
5) 方法的参数和方法内部的变量 都是局部变量,
6 T; ?& Y' }& u$ W% n 这些变量作用域只在方法内部!
4 C5 s' K9 {0 y4 E3 Y 6) 实参: 方法调用时候实际传递的参数变量
+ b4 B$ X' O& [1 H2 ^4 J5 W 形参: 方法的参数定义,是临时变量./ O) u: S/ w3 H' V$ i( v
$ T9 n& w# {, n& c5 J$ e2. Java 运算符; Z5 b8 M4 W A5 `: W
1) 数学运算符 + - * / %
9 S0 r* F# [9 \ W8 e A 运算的封闭性(补码运算的封闭性): ; Q/ ^8 @6 f; d5 N/ N
1.同种类型参与运算(可能需要自动类型转换)
: ^1 x2 \' e! O* A5 L( q" |8 t 2.返回同种类型(可能发生:上溢出和下溢出)" L- P" a4 t2 k$ ? Z+ F
3.byte, short, char 按照int运算- V% [' }# s' Q7 k4 s% V; a
如: int a = 1 + 'A';
@: Q( g' {: o! h: W$ Y9 |/ v( L B. 整数的除法是整除8 D* j1 {. O: M5 Z. b' c
1.除以2相当于移位运算(移动小数点) , N+ V! K7 t' i
C.Java中字面量的运算被Javac优化了, 优化为一个固定的常量.
0 q& x: z @* K4 Z4 r3 h9 N D. % 计算除法的余数* g5 j, ^0 r" }+ q$ b2 G5 @
1. 0 对其他数的 余数 是0. S3 b* P, x2 G" b! D4 d$ l, b
2. n%3 是 周期函数, 函数值 [0,3)5 m3 y7 V( I. t8 ~# [
3. 负数的余数是负数(考试可能出现, 工作中很少用)+ `* m2 b. Y+ m, O+ k; @: \( Q" v
2 T3 `8 {4 f& p7 }1 e
2) 自增(自减)运算 ++ --
# C; O7 A; B. h9 C 1. 可以将当前变量自我增加(减少)1
# O& j7 i& _( L" E 2 i++, 后++, 先将i的值作为整个表达的值, 然后将i增加1.: k/ i4 w7 T4 s' V I2 L; R# ^
3 ++i, 先++, 先将i增加1, 然后将i的值作为整个表达的值.
0 V. g; q1 ~9 c9 _ int a = i++;
" l# r$ h* J4 ?$ M( ^0 b) R1 B0 @ (i++)%3" @" s/ ?9 X& Z) E+ z7 U2 G% }' d5 B
; E8 s! _1 F. T+ x, o 3) 逻辑与比较运算
1 H% ^0 z8 h$ a1 U 1.逻辑运算 与(并且)&& 或(或者)|| 非(否则)! % E) @: A' R5 z6 o" z9 Q
非短路的逻辑运算 & | , 比较少使用, 逻辑不合理
4 r! h9 Y4 G8 F) N& p 2. 比较运算, 比较变量的值, 就是逐个"位"比较值: > >= < <= == !=& `1 w2 @+ {+ Q. ]6 |: H
基本类型变量的值就是基本值如: i=1# a. _% D+ B7 G8 ^. b
引用类型变量的值是对象地址值.(在面向对象阶段详细讲解)+ O( X4 |& {2 T% V0 F7 ?0 L6 s
. ?2 S) |3 b: r* U* [# W int i = 1;/ [0 C- Y) d O
long l = 1;
/ G$ C! B6 u1 ~7 _0 C: X System.out.println(i==l); //true% i9 n- y, v1 y5 L* K7 e+ M
4) 条件运算符(3元运算符)
6 ~6 C6 C2 b2 B( f! d3 r 语法: 条件表达式 ? 表达式1 : 表达式2
* M L9 Z8 `% B% \% `! n 当"条件表达式"为true时候, 表达式1作为整个表达式的值,
6 A% E' M$ Y6 G0 w$ H 否则 表达式2作为整个表达式的值! Y0 Y( }. G3 C
如:
S" L5 a9 i1 i; S: T7 g boolean isBoy = true;
+ {! j" Z* k- f, z int level = isBoy ? 2 : 3 ;// 2
- @2 y0 f9 x# f# ?7 h; r0 i+ E" t* O1 P, R9 C$ x+ q
3. 分支流程控制, y1 c7 r7 x( C, f d* ?7 [
1) if ... else8 x, T# t( T9 M% g2 g% [
语法: if(布尔表达式){9 h/ L! f5 ^2 r" w- x7 ]
//语句块..( o* C4 Y: N, Z A+ C( ]
}else{
# ?1 a: f; y3 x/ D. \+ c( U //语句块
- U! Y0 s E) s: X- e }; F* A9 D3 ^! I; p3 |3 q
嵌套: if(布尔表达式){- s& J" m! h0 K9 F# I* A" ?
//...( K1 T4 E7 a, V
}else if(布尔表达式){
$ Z \1 L( B! K8 B& e. V9 Q) M //... `; [9 ?. s) l- x: C
}else if(布尔表达式){* b5 A# W/ Y" g
//...7 |' j6 W) P. I9 W5 ~5 v Q" K
}else{0 V* s9 z! h) ^: b0 _( ?6 O- [9 n4 N
//...
4 K \" ]( _ [" ]/ c+ e( e5 d }1 q& c8 L! j) ]- Q% o, P
! g, M" i! l4 p% |6 x* ?( {/ f 2) switch ... case
0 G5 z, S5 X- [# O4 X7 k; D 语法: switch: 开关, case: 情况下
8 K) s" E' u! o- U: e% d" J switch(整数表达式){ ! o1 _; Q5 z# I" ]
case 整数常量1:
) S3 Y9 v, d- l0 ?' x: B9 Z //语句序列
- _0 k; A7 V8 b break;
' O9 ?+ D$ K; ?- o0 f, W$ b6 } case 整数常量2:
- z: H$ ~% b4 m+ S1 r) ?" M9 M& i1 n //语句序列
! h& D# O* d4 {6 `# ?: J break;5 C0 D; @" k1 ]: q. C( {/ S, z. `
default: & M# l4 b: t: e* |& s
//语句序列
+ g8 F# y& v+ X }+ j4 _! x( {- D2 t1 M- C
A. switch条件: 只能是整数(int byte char short)表达式
4 d+ w3 q8 X& h1 A L9 C( Q2 I switch 不能处理long 或其他类型% q9 p, A: {7 l% \! S
B. case 只能是整数(int byte char short)常量, 不能使用
+ k2 `" V4 w6 z 变量及表达式. 如: '中'! I' q# S+ u- y2 S! m+ T; @
C. break 跳转到switch结束继续执行, 可以根据业务逻辑是否使用6 C6 z2 N2 d& A0 Y9 [
经常都写break
) a+ X: j) ]& y4 W# T3 J/ d' D3 N2 _8 ?3 u6 ]/ N( i4 e2 Z [
4. 循环控制5 g/ n0 ]6 r- d, s& W, Z
1) While 循环控制
& D2 ^. l( _( O- [+ X 语法: T6 [2 g2 M' I1 B0 ]! _5 S
while(布尔表达式){
; j; \. R6 e; W8 z D- [9 }/ M- N //循环体 语句序列: J0 y" h+ q5 w3 _, b1 f
} U& \0 l2 h# S3 u% o
& o5 r( `& E0 F+ D
2 S8 f9 n5 g. z
|
|