该用户从未签到
|
1. java 的方法Method (函数 Function), 功能, 动作
1 G- s7 p% b! p. T5 e 1) 方法就是函数: y=f(x)=3x+6;3 |( v6 p: ]- w1 V
2) 方法的语法1 H2 h0 {9 u3 b
(修饰词)(返回值类型)(方法名)(参数列表){( | _+ T/ [% [6 k( I1 L
//方法体
3 Z1 c& j8 Z* ~" a6 M) T6 J" g }" o+ `; q; S- o( ]6 ~( s7 ?
public static void main(String[] args){}/ Q# `2 B$ q$ E+ h
如:5 g- F3 x( c3 K& Z/ N, z, e
public static int f(int x){
3 X( p- ?0 |* R/ u1 y* u int y = 3 * x + 4;/ ]1 `" m! I5 g) z8 Q
return y;
; ]0 n/ p- t& ]- v* ]" X/ w }
- S7 C% d2 q) X. ] 4) 如果有返回值定义就必须有return语句, 返回和返回值类型! [, X+ y2 }0 m h% ~3 G: {5 X2 M
兼容的数据
- s! M; K' H8 O3 i8 y V. e 5) 方法的参数和方法内部的变量 都是局部变量, v B; ?; g) C8 k
这些变量作用域只在方法内部!$ {% K( _- ~' G6 {! Z B( L
6) 实参: 方法调用时候实际传递的参数变量6 `8 V) z; b$ f+ l; y2 b. |
形参: 方法的参数定义,是临时变量.7 p; v# z7 Z1 r2 h3 a
. |( g: l" d$ x
2. Java 运算符' p- j. _* L5 d2 F1 |+ n
1) 数学运算符 + - * / %
! }2 H" j" i/ I$ P A 运算的封闭性(补码运算的封闭性):
, e" i9 T* E5 g7 s) r& L3 @ 1.同种类型参与运算(可能需要自动类型转换)
$ T' C: M0 G# L1 z' ]2 Z 2.返回同种类型(可能发生:上溢出和下溢出)$ f5 [4 F- Z$ p; [6 A, Y5 Z( H6 V
3.byte, short, char 按照int运算( @2 H$ K+ |( \# @
如: int a = 1 + 'A';
. f9 Q$ f1 T7 V! R B. 整数的除法是整除3 I3 l' G/ E6 a. R6 n6 t
1.除以2相当于移位运算(移动小数点) ' p7 V$ c6 K7 m0 }9 b
C.Java中字面量的运算被Javac优化了, 优化为一个固定的常量.
8 Z9 l9 L* U$ t/ |$ F8 J6 B D. % 计算除法的余数- k w; N. w6 I- k' _# [; K" q" V5 E
1. 0 对其他数的 余数 是0
1 s+ S- S; w, Q" h; q6 X6 l 2. n%3 是 周期函数, 函数值 [0,3)+ j5 Y$ m3 g4 `; l" D" k
3. 负数的余数是负数(考试可能出现, 工作中很少用)* D. f6 Y& r! x7 ?
! c) b6 Z. R( p 2) 自增(自减)运算 ++ --; {& L* `! L. x& T
1. 可以将当前变量自我增加(减少)1 a: g' _2 S6 y! g( f
2 i++, 后++, 先将i的值作为整个表达的值, 然后将i增加1.
% J4 T3 l! w* ]" ^# j: Y6 \) F 3 ++i, 先++, 先将i增加1, 然后将i的值作为整个表达的值.
. a: T" ^0 n3 |9 o+ s& `, t# Y int a = i++;. p$ \% _, t. T$ w9 `) y/ e* j4 e
(i++)%3' c1 _3 B5 X' t
$ A# l, v K/ |) [6 a7 @. R* b& O( Q
3) 逻辑与比较运算 0 P( `9 s2 g; o1 J
1.逻辑运算 与(并且)&& 或(或者)|| 非(否则)! 2 K( o! `+ r8 V4 T2 v- p
非短路的逻辑运算 & | , 比较少使用, 逻辑不合理
$ c: X2 l5 T3 H8 Z 2. 比较运算, 比较变量的值, 就是逐个"位"比较值: > >= < <= == !=. @- b- A# W" W* _" b# _4 y
基本类型变量的值就是基本值如: i=1* X, J. N2 m3 h- m
引用类型变量的值是对象地址值.(在面向对象阶段详细讲解)2 T+ ` Y9 P3 n2 ~4 M
8 O+ W; }& W# W4 o0 f5 L int i = 1;
; Z8 T( T+ r. N" _$ I long l = 1;+ F5 ~7 Z% S1 J0 Q( Y5 j, ~, j
System.out.println(i==l); //true* `8 } d; ~+ V! H( m1 G# v
4) 条件运算符(3元运算符) ; r( S7 u7 B! Y2 J `, q# y
语法: 条件表达式 ? 表达式1 : 表达式2
4 o4 {4 D/ q: G( Y# k. `! g9 g 当"条件表达式"为true时候, 表达式1作为整个表达式的值,
" U+ y, I- ~# r7 E9 m; S* n! D 否则 表达式2作为整个表达式的值1 z3 c( i2 m6 o. Z2 K
如:
3 H- O8 @3 j5 J; U boolean isBoy = true;
1 R0 N+ f8 D3 _1 U' P" _. Z% G; \ int level = isBoy ? 2 : 3 ;// 2
% i/ d4 f9 ~. Z6 f/ v h( F1 w: }5 W5 u4 I9 H" z
3. 分支流程控制
8 h2 g. V5 {) H) `0 j$ M1 ~' ^ 1) if ... else
$ L: C6 ^8 w, W' `& v" y3 d 语法: if(布尔表达式){ |! K7 T, n8 }9 D
//语句块..6 Y( g2 p' N% N
}else{0 V; K, @4 O- h) Y6 k( u
//语句块
! q6 @# F4 u# k# | }5 w$ \+ I' G* L( f n B% r/ }* K
嵌套: if(布尔表达式){
( |* K8 v8 e4 y- Y9 R( T: v //...
) S4 W9 A$ M+ I( h. t# E: M }else if(布尔表达式){' ^* R2 P) N( l1 }7 |
//...
: n2 v% j4 A2 P$ q! _ }else if(布尔表达式){
( U4 A" S, c0 O8 Q //...
' M, }) R- \& | E/ {+ p7 b }else{8 t: Q$ ], C: G& D. o8 Q, ?7 \
//...
# F0 }) c, ], R6 X( i: @, G: a }+ G; X$ y( m7 {8 |% U
# D, @" |% V9 W0 U; D 2) switch ... case
s% @( {8 F8 i$ N- m 语法: switch: 开关, case: 情况下& U2 E" q( T+ U9 B) o9 ?
switch(整数表达式){
7 q; N6 X% Q6 @) d case 整数常量1:
C4 X7 S3 d. |* X! ?7 o+ U //语句序列; k* u: o+ Z/ f; g
break;
$ ?1 ~& ^1 I4 U f case 整数常量2:
: [$ u7 n% W2 {% {$ S/ O3 | //语句序列
^5 d8 S' n; }- V break;& e6 T+ s T: f. p
default: 0 s" G. a3 a3 `6 c" W0 w7 @5 q
//语句序列
' W w3 R5 Z$ D& D1 ^ }1 q$ K T% Q( e. l5 V B. ?2 b9 W
A. switch条件: 只能是整数(int byte char short)表达式! q4 C# c3 P+ |
switch 不能处理long 或其他类型
5 Y3 ]6 O3 s; h+ }. c" n6 u- ~ B. case 只能是整数(int byte char short)常量, 不能使用& O j, t( H, @/ n
变量及表达式. 如: '中'
`% ^2 h) `+ ]1 P2 b3 \. b C. break 跳转到switch结束继续执行, 可以根据业务逻辑是否使用: ]) x; g0 [8 A, a! G+ _! }" h
经常都写break
* A$ k9 w0 m% N' \1 U
( R2 W. K! G& [4 q% H5 n4. 循环控制% [1 E! h2 \% z* a9 Z5 ?3 s
1) While 循环控制
4 a2 ?+ v& D' t1 X; m 语法:
* x5 _+ ]. f" q9 v1 m7 I* T$ u while(布尔表达式){7 h; W) l3 v2 t9 A! p7 H) A9 ^
//循环体 语句序列4 m* o( Z! Z m# ]
}
; S* G2 U# T7 g6 R6 `$ j4 t2 k
' v: k( Y+ A6 ]/ L* t1 J, }2 u% G
0 @! J9 U( {8 R/ y, Z9 l5 Q: [ |
|