知识回顾
600多种开发语言,为何市场独爱java?
J2EE Enterprise Edition 企业级版本,它推出EJB 企业级JavaBean,也是在java中最早提出bean概念。
它开了企业级分布式结构先河,但是EJB本身结构不够优化,被新市场产品淘汰,新产品迎来了java春天Spring框架
java有多强大?
京东最早的架构使用.net框架,早被java替代
新浪微博使用php,鹿晗事件发生后,多次宕机,最新核心已经使用java替代
java是通过30年血雨腥风依然屹立不倒。
JDK、JRE、JVM的区别
java编译过程及跨平台特性
快速编码
首先大家要练习打字,作为一个专业的程序员是有打字速度的要求:每分钟120字,好150字,较好200字
技巧:快捷键 eclipse
1)ctrl +s 保存
2)ctrl +d 删除一行
3)快速创建main方法
a. 创建类时,指定main方法
b. 快捷键:输入main字母+Alt+/,快速提示,进行选择确认
4)快速创建打印语句
快捷键:输入syso字母+Alt+/,快速提示,进行选择确认
package cn.tedu.hello;
public class Hello {
//代码要缩进,好习惯,看的清爽,层次结构清晰
//TAB键,4个空格,7个空格
//main+ Alt+/快速提示main,别选错,eclipse提供模块,开发效率高
public static void main(String[] args) {
//打印快捷键:syso+ALT+/
System.out.println(“Hello World2”);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
junit单元测试
开发时,必须有测试,每个开发者每天最多的时间是解决BUG(错误)
单元测试,每个类的每个方法每个参数都需要进行测试,尽量去做。
1)早期就利用main来测试(控制台内容是给开发者看的,不是给用户的),java设计main方式是程序执行入口。毕竟不好。main方法只能执行一个方法,不能去调用每个方法都测试,多个方法通过注释来回切换。开发效率低。
2)主流第三方(非java提供,不在jdk中)提供新的测试方法:junit
junit开发步骤
1)找到第三方提供的jar包(资深程序员给的:官网、Maven仓库,分发给团队成员,eclipse直接提供junit.jar )
2)import 导入jar包 ,语句固定位置:package下面,class声明的上面
import java.util.Scanner; //导包
3)给junit测试方法戴上一个帽子 @Test 注解(特殊类)
一个类可以粗略分为3个方法:main、普通业务方法add()加法、单元测试方法 test
测试方法很多要求:公用的 public、无返回值的 void、方法不能有参数 test()
package cn.tedu.base;
import org.junit.Test;
//自动,导入注解
/*
-
需求:比较main方法和junit单元测试方法的区别
-
导入junit,反着来的,加入@Test后会自动找jar和导入import
*/
public class Hello {
public static void main(String[] args) {
System.out.println(“main method”);
}/*
- 测试方法:
- 1)必须public
- 2)必须void
- 3)必须无参
- 方法名自己随便定义,按驼峰规则
- 导入成功有3处变化
- 1)选对junit4 不报错
- 2)eclipse项目加入junit支持(自动)
- 3)
*/
@Test
public void hello() {
System.out.println(“junit test method”);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
import org.junit.Test;
//需求:测试变量和常量,学会演算
public class TestVar {
@Test //测试常量
public void finaltype() {
//final修饰变量就变成常量,常量不允许修改
final int z = 100;
<span class="token comment">/*
* The final local variable z cannot be assigned.
* 局部变量z不能被分配内存空间
* It must be blank and not using a compound assignment
*/</span>
<span class="token comment">//z = 200;</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>z<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//常见常量,习惯大写</span>
final double <span class="token constant">PI</span> <span class="token operator">=</span> <span class="token number">3.1415926</span><span class="token punctuation">;</span>
final double <span class="token constant">P</span> <span class="token operator">=</span> <span class="token number">6.18</span><span class="token punctuation">;</span>
final String <span class="token constant">SYSTEM_NAME</span> <span class="token operator">=</span> <span class="token string">"京淘电商"</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
@Test <span class="token comment">//测试变量</span>
<span class="token keyword">public</span> <span class="token keyword">void</span> <span class="token keyword">var</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span>
int x <span class="token operator">=</span> <span class="token number">10</span><span class="token punctuation">;</span>
int y <span class="token operator">=</span> <span class="token number">2</span><span class="token punctuation">;</span>
<span class="token comment">//Duplicate local variable y 局部变量y定义了多个</span>
<span class="token comment">//原因:java要求在一个方法体内只能定义一个同名变量</span>
<span class="token comment">//局部变量不能定义两次,不能重名</span>
<span class="token comment">//int y = 5; //修改了y的值,并且覆盖</span>
y <span class="token operator">=</span> <span class="token number">5</span><span class="token punctuation">;</span> <span class="token comment">//修改了y的值,并且覆盖</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>x<span class="token operator">/</span>y<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//10/5=2</span>
<span class="token punctuation">}</span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
运算符
数学:x+y=z,x,y,z操作符,+运算符,=赋值
package test;
import org.junit.Test;
//需求:算术运算符 ±*/ %
public class TestArith {
@Test
public void arith() {
int x = 10;
int y = 2;
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span> x <span class="token operator">+</span> y <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//12</span>
<span class="token comment">/*
* 字符串中内容原样输出
* 如何判断+是字符串连接符还是数学+呢?
* 如果+号两边有一边是字符串,结果就是字符串
*/</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x+y="</span><span class="token operator">+</span>x<span class="token operator">+</span>y<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//x+y=102</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x+y="</span><span class="token operator">+</span><span class="token punctuation">(</span>x<span class="token operator">+</span>y<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//x+y=12</span>
<span class="token punctuation">}</span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
算术运算符
package test;
import org.junit.Test;
//需求:算术运算符 ±*/ %
public class TestArith {
@Test
public void arith() {
int x = 10;
int y = 2;
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span> x <span class="token operator">+</span> y <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//12</span>
<span class="token comment">/*
* 字符串中内容原样输出
* 如何判断+是字符串连接符还是数学+呢?
* 如果+号两边有一边是字符串,结果就是字符串
*/</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x+y="</span><span class="token operator">+</span>x<span class="token operator">+</span>y<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//x+y=102</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x+y="</span><span class="token operator">+</span><span class="token punctuation">(</span>x<span class="token operator">+</span>y<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//x+y=12</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x-y="</span><span class="token operator">+</span><span class="token punctuation">(</span>x<span class="token operator">-</span>y<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x*y="</span><span class="token operator">+</span> x<span class="token operator">*</span>y <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//*优先级高+</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x/y="</span><span class="token operator">+</span> x<span class="token operator">/</span>y <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//除优先级高+</span>
<span class="token comment">//取余,余数</span>
x <span class="token operator">=</span> <span class="token number">11</span><span class="token punctuation">;</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x%y="</span><span class="token operator">+</span> x<span class="token operator">%</span>y<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
package test;
import org.junit.Test;
//需求:测试++自增(每次+1)和–自减(每次-1)
public class TestSelf {
@Test
public void self() {
int i = 10;
i++; //i=i+1 缩写
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>i<span class="token punctuation">)</span><span class="token punctuation">;</span>
int j <span class="token operator">=</span> <span class="token number">100</span><span class="token punctuation">;</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>j<span class="token operator">++</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//100,先打后加,101</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token operator">++</span>j<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//102,先加后打,102</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token operator">--</span>j<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//101,先减后打,101</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>j<span class="token operator">--</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//101,先打后减,100</span>
<span class="token punctuation">}</span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
赋值运算符
package test;
import org.junit.Test;
//需求:赋值运算符 =、+=、-=、=、/=
public class TestAssign {
@Test
public void assign() {
//赋值语句特点:先执行右边
int i = 10+20-302; //表达式
System.out.println(“i=” + i);
i <span class="token operator">+=</span> <span class="token number">5</span><span class="token punctuation">;</span> <span class="token comment">//i=i+5</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>i<span class="token punctuation">)</span><span class="token punctuation">;</span>
i <span class="token operator">-=</span> <span class="token operator">-</span><span class="token number">10</span><span class="token punctuation">;</span> <span class="token comment">//i=i - -10</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>i<span class="token punctuation">)</span><span class="token punctuation">;</span>
i <span class="token operator">*=</span> <span class="token number">0</span><span class="token punctuation">;</span> <span class="token comment">// i=i*0</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>i<span class="token punctuation">)</span><span class="token punctuation">;</span>
i <span class="token operator">/=</span> <span class="token number">2</span><span class="token punctuation">;</span> <span class="token comment">// i=i/2;</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>i<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
关系运算符
package test;
import org.junit.Test;
//关系运算符:==相等和!=不等
public class TestRelation {
@Test
public void relation() {
int a = 10;
int b = 20;
<span class="token comment">//判断是否相等,结果布尔表达式,true/false</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>a <span class="token operator">==</span> b<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//false</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>a <span class="token operator">!=</span> b<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//true</span>
<span class="token punctuation">}</span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
逻辑运算符
package test;
import org.junit.Test;
//逻辑运算符:与&、或|、非!、异或^
public class TestLogic {
@Test //利用穷举法,通过结果来记忆
public void logical() {
//与 &,特点:两边条件都成立结果才成立
System.out.println(true & true); //t
System.out.println(true & false); //f
System.out.println(false & true); //f
System.out.println(false & false); //f
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"--短路与--"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//空行</span>
<span class="token comment">//短路与 &&,前面条件不成立false,后面无需再执行,推荐使用,速度快</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">&&</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t </span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">&&</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
<span class="token comment">//Dead Code 死代码,不会执行的代码</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">&&</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">&&</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//空行</span>
<span class="token comment">//或 |,特点:有一边成立结果就成立</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">|</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">|</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">|</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">|</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
<span class="token comment">//短路或 ||,特点:条件结果true,后面的条件就无需判断,推荐使用,速度快</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"--短路或--"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">||</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">||</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">||</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">||</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//非,!,特点:取反</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token operator">!</span><span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token operator">!</span><span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//异或,^,特点:两边相同结果为false,两边不同结果为true</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">^</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">true</span> <span class="token operator">^</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">^</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//t</span>
System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token boolean">false</span> <span class="token operator">^</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//f</span>
<span class="token punctuation">}</span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
三目运算符
package test;
import org.junit.Test;
/*
-
需求:三目运算符(三元)
-
格式:布尔表达式 ? 值1(表达式) : 值2(表达式)
-
特征:1 ? 2 : 3(死记)
-
结果:如果布尔表达式结果为true,返回值1,false,返回值2
*/
public class TestVar3 {
@Test //两个数求最大值
public void max2() {
int x = 10;
int y = 5;
int max = (x>y)?x:y;System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"x="</span><span class="token operator">+</span>x<span class="token operator">+</span><span class="token string">",y="</span><span class="token operator">+</span>y<span class="token operator">+</span><span class="token string">", 最大值:"</span><span class="token operator">+</span> max<span class="token punctuation">)</span><span class="token punctuation">;</span>
}
@Test //三个值求最大值
public void max3() {
int x = 10;
int y = 200;
int z = 30;<span class="token comment">//第一种思路,把max和z在进行三目,然后结果给max</span> int max <span class="token operator">=</span> <span class="token punctuation">(</span>x<span class="token operator">></span>y<span class="token punctuation">)</span><span class="token operator">?</span>x<span class="token operator">:</span>y<span class="token punctuation">;</span> <span class="token comment">//临时保存中间值,先求出x和y中的最大值</span> max <span class="token operator">=</span> <span class="token punctuation">(</span>max<span class="token operator">></span>z<span class="token punctuation">)</span><span class="token operator">?</span>max<span class="token operator">:</span>z<span class="token punctuation">;</span> <span class="token comment">//利用中间变量和最终值进行比较</span> System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"最大值:"</span><span class="token operator">+</span>max<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//第二种思路,一行应用两次三目</span> int max2 <span class="token operator">=</span> <span class="token punctuation">(</span>x<span class="token operator">></span>y<span class="token punctuation">)</span><span class="token operator">?</span>x<span class="token operator">:</span>y<span class="token operator">></span>z<span class="token operator">?</span><span class="token punctuation">(</span>x<span class="token operator">></span>y<span class="token punctuation">)</span><span class="token operator">?</span>x<span class="token operator">:</span>y<span class="token operator">:</span>z<span class="token punctuation">;</span> <span class="token comment">//结构太乱了,推荐上面的方法</span> System<span class="token punctuation">.</span>out<span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"最大值:"</span><span class="token operator">+</span>max2<span class="token punctuation">)</span><span class="token punctuation">;</span>
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
小结
1、测试方法比较main方法和junit区别
1)main是java自身结构,junit第三方公司开发
2)main是程序application执行而生(用户),junit测试方法是为测试而生(开发)
3)main约束,一个类中只能有一个main方法(一个),一个类中可以有多个test方法(多个1~n)
2、怎么使用junit单元测试?
1)寻找junit.jar(官网,百度下载,资深程序员(架构师、高级程序员)给我们)开发工具自带(eclipse)
2)导包 import org.junit.Test(导包后面的内容可以自己写-手动,也可以利用eclipse导入-自动选择-推荐)
3)在类中给单元测试方法戴个帽子 @Test(注解@开头,特殊类)看着怪怪的,开发效率非常高,代码量少
开发时,写好类中的单元测试方法,最后给它带帽子,通过错误提示菜单,把它们都加进来
jar一个项目加载一次(项目)
import 一个类导包一次(类)
3、导包
1)import org.junit.*; //把org.junit包路径下的所有的类都导入(类加载器,加载jvm中)
方便,会多加载无用的到内存中,浪费内存
2)import org.junit.Test; //只加载Test.class这个类
推荐,高效,速度快
关键字和标识符
1)关键字:java定死的单词,这些单词都小写,开发者不许用,50+多个
注意一些特殊字:java、test、const(常量)不要使用
作业:晚上把关键字写10遍,死背记住
2)标识符:开发者自定义名称
习惯方法内的局部变量:
- a,b,c,x,y,z,i,j,k,m 小写,一个字母;
- 小驼峰 name,age,address,firstName,secondName
习惯常量的:
- 全大写,增加final修饰符 double PI=3.14; String SYS_NAME=“京淘电商”;
变量和常量的区别
1)变量:变化的量,变量可以进行多次赋值,赋值后会覆盖之前的值(丢了)
2)常量:不变化的量,一旦赋值就无法进行修改。(安全,修改不了)