该用户从未签到
|
1. java 的方法Method (函数 Function), 功能, 动作$ }: n( O# Z) w+ g+ l4 l$ `
1) 方法就是函数: y=f(x)=3x+6;
, E$ G1 t$ x& j 2) 方法的语法
8 d9 ^- S0 a# D/ Z X0 }1 z: \0 k (修饰词)(返回值类型)(方法名)(参数列表){
* I8 u, I3 `% v+ R' E //方法体6 h. f+ j2 @ s
}
; K% F8 f: w$ A' o3 l9 _+ x5 m public static void main(String[] args){}
0 n' P( G1 ^* B2 f7 R1 C/ L" U 如:
9 E' Y/ s v) }, P public static int f(int x){6 l% J4 \7 {* W9 H, \/ Y, Z/ B
int y = 3 * x + 4;
% L; d/ `5 v% }7 h* ] return y;
4 z3 `8 K+ p% Q! A }
+ c" s) I$ ]; w( L2 z 4) 如果有返回值定义就必须有return语句, 返回和返回值类型% u0 L) n5 S7 ~: x- R
兼容的数据
: s6 [# q9 U( \) a# ? 5) 方法的参数和方法内部的变量 都是局部变量,6 C. Q8 c$ l- v& l7 V
这些变量作用域只在方法内部!
5 ]9 q: s u- ]/ }6 x3 c 6) 实参: 方法调用时候实际传递的参数变量# l0 O& l5 w2 i" P
形参: 方法的参数定义,是临时变量.
4 b; _0 X4 D. e0 {
% S6 v1 [0 f% j3 K, y0 p2. Java 运算符
1 L& k$ W# l9 T' x7 N 1) 数学运算符 + - * / %
+ x# [4 E% o! F A 运算的封闭性(补码运算的封闭性): $ c$ `4 I! Y% j
1.同种类型参与运算(可能需要自动类型转换)" V7 m2 D8 e( ^. Y) [* Y6 \# a
2.返回同种类型(可能发生:上溢出和下溢出)
0 r& R3 F1 T- v; p6 U& R5 ~# g 3.byte, short, char 按照int运算% G5 R; L1 _1 U! b/ U" G; A
如: int a = 1 + 'A';
( d/ u# X; ?) _1 ~ B. 整数的除法是整除
# p- D+ U5 ^" m+ U7 n# x5 [, g 1.除以2相当于移位运算(移动小数点) # h2 j5 E6 P& r( y" d" q1 S- {
C.Java中字面量的运算被Javac优化了, 优化为一个固定的常量.2 C) x5 d& P: m/ N) B' ]
D. % 计算除法的余数
4 `! U: g+ }+ l' `! ~9 E0 D 1. 0 对其他数的 余数 是0
# `5 Y) ^6 K- q" A! G d 2. n%3 是 周期函数, 函数值 [0,3)5 @5 x2 ~" \$ A* k/ e8 d1 W
3. 负数的余数是负数(考试可能出现, 工作中很少用)
- F9 v% G9 I0 D7 l
: m; M1 S. J5 h1 \& ? 2) 自增(自减)运算 ++ --0 y1 ]* ?3 P( t
1. 可以将当前变量自我增加(减少)18 h; b( o1 W: e6 k
2 i++, 后++, 先将i的值作为整个表达的值, 然后将i增加1.
2 j w/ y8 o& F$ Q; ? 3 ++i, 先++, 先将i增加1, 然后将i的值作为整个表达的值.
' C. y$ ]: J' q# T7 p+ c/ g& l int a = i++;6 i, r4 a0 g/ c) s9 ~- g: e
(i++)%3
# E/ _' s2 f3 x! [5 I' S+ D
, s. ?3 a4 V. l2 } 3) 逻辑与比较运算
3 x6 M( N5 W! m' {, b) t 1.逻辑运算 与(并且)&& 或(或者)|| 非(否则)! # n# l g& H( A; ?6 F, o$ Q! Z
非短路的逻辑运算 & | , 比较少使用, 逻辑不合理
. g: O4 x9 I0 a1 v4 U 2. 比较运算, 比较变量的值, 就是逐个"位"比较值: > >= < <= == !=
! n4 n4 v2 f+ @% T2 T, ]7 m! | 基本类型变量的值就是基本值如: i=1
; K9 G! ?; C/ J# v0 [+ s& z+ y: b 引用类型变量的值是对象地址值.(在面向对象阶段详细讲解)
! ^/ n% ~4 p. j3 z: P- m: w) ?0 u; l4 n2 k
int i = 1;+ T$ v& I% q- x# b" o
long l = 1;
% ` V! P( q- a1 U: d' _ System.out.println(i==l); //true* S+ o. X4 `4 J
4) 条件运算符(3元运算符) " h. z7 y& I& @, S! [: I
语法: 条件表达式 ? 表达式1 : 表达式2" J+ d$ U+ u, `. U
当"条件表达式"为true时候, 表达式1作为整个表达式的值,
% }2 Q$ l5 p* d* e% o0 g 否则 表达式2作为整个表达式的值
; a6 [8 R/ {$ h+ m8 }/ ? 如: % X3 _4 g. Y. t ]2 G+ H7 x$ Z
boolean isBoy = true; M, B- T6 z5 `! G6 C3 y8 ]0 E
int level = isBoy ? 2 : 3 ;// 2( c2 {* i$ X( c0 ^, ?* s3 N; V! k
% b- P0 V, ^( c% {% x* M
3. 分支流程控制/ m2 W' `9 M1 s9 l, Q
1) if ... else
* y5 m8 c% a! }2 T+ E 语法: if(布尔表达式){
6 ~! [5 z3 Z7 R9 V8 n //语句块..
& _$ z+ n9 z- A# i( y% W( v3 t: l }else{+ R- J" K: Q9 Y" _$ D
//语句块
7 a! u, i- S+ U* n }/ s, ^# `- i5 T0 @6 `
嵌套: if(布尔表达式){* z( F& p& [, B7 ~3 E F
//...9 v- v1 v/ l$ D9 Z% |9 A+ |
}else if(布尔表达式){1 G- l: z3 m7 x" z8 Z- j0 {0 z# A
//...
# O% a" {0 C/ P# q' y% }1 W( ? }else if(布尔表达式){
p+ ^6 M9 }! b7 C" |2 I //...
7 P' t( o8 [) ~ }else{! l; o' x, r) C: D! N- Q' M. `% \
//...7 }: w' U5 \9 E* _ r R2 }. U
} {$ y* l# l3 R$ m
) v t% d- q' m7 q 2) switch ... case4 Q& i% [8 Z* u9 [
语法: switch: 开关, case: 情况下
5 J, I4 Y- U1 y+ r) q: s5 j- i! t4 J switch(整数表达式){ 8 e0 | v* i4 Z
case 整数常量1:
, t7 U4 z$ {4 P2 I* J$ p( e% | //语句序列8 Z2 k! m+ G& l" }
break;' N& s; G# z/ W4 q
case 整数常量2:$ D3 K; D/ `; u; _% M# X8 F5 ]8 n
//语句序列6 r1 i% `3 J" b& P
break;
+ c8 W7 C" ^( C1 c default: - R8 _; ]0 f2 m5 K) s+ W$ b
//语句序列
: m& U) K; |" m0 N1 d) h# G }
% ^& W& a; a, G! J# G A. switch条件: 只能是整数(int byte char short)表达式! ^- l: L1 j8 Q# n/ G* A+ C
switch 不能处理long 或其他类型
; l3 D* w+ a8 ]. u% o) z0 N1 R: C B. case 只能是整数(int byte char short)常量, 不能使用
/ A! T) T% c3 U6 j; O& m S5 x$ @% U 变量及表达式. 如: '中': |: T. h+ x4 o- G- F
C. break 跳转到switch结束继续执行, 可以根据业务逻辑是否使用
) Q4 s; O1 w/ x! {3 [4 k. @ 经常都写break; P/ _% f+ `1 n. \& d* `
, K1 _: _5 G* `) V6 Z4. 循环控制: ?* f9 d5 l j$ y7 n- _
1) While 循环控制
o1 d9 a2 Y# j8 _ t7 N$ d) T 语法:7 p, b7 o* _, Q' \. V
while(布尔表达式){
, L1 X8 E# h3 m //循环体 语句序列
& h" s+ F& x! ]% Y }/ D3 B% W- Q+ J9 R! O6 o& n
9 p1 J' U( g3 c) G1 g/ l% }0 u
1 I0 U T6 H/ z |
|