第一章 顺序结构
1
|
计算机执行代码的默认顺序:程序从上到下从左到右执行,中间没有任何判断和跳转
|
第二章 分支结构
1
2
|
根据条件,选择性地执行某段代码
有if…else和switch...case两种分支语句
|
第1节 if…else
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
|
//方式一
if(表达式){ //表达式结果为布尔型,如果表达式结果为true那么执行大括号中的代码
//代码
}
//方式二 //表达式结果为布尔型
if(表达式){ //如果表达式结果为true那么执行大括号中的代码
//代码
}else{ //如果表达式结果为false那么执行大括号中的代码
//代码
}
//方式三 //表达式结果为布尔型
if(表达式1){
//代码
}else if(表达式2){ //表达式结果为布尔型
//代码
}
//方式四
if(表达式1){ //表达式结果为布尔型
//代码
}else if(表达式2){ //表达式结果为布尔型
//代码
}
...
else{
//代码
}
|
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
|
int age=18;
if(age>=18){
System.out.println("成年人");
}
if(age<18){
System.out.println("未成年人");
}
//-------------------------------------------------------------------
int age=18;
if(age>=18){
System.out.println("成年人");
}else{
System.out.println("未成年人");
}
//-------------------------------------------------------------------
int x=10;
if(x>60){
System.out.println("不及格");
}else if(x>=60 && x<80){
System.out.println("CCC");
}else if(x>=80 && x<90){
System.out.println("BBB");
}else{
System.out.println("AAA");
}
|
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
|
//由键盘输入三个整数分别存入变量num1、num2、num3,对它们进行排序(使用 if-else if-else),并且从小到大输出
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("请输入num1:");
int num1 = s.nextInt();
System.out.print("请输入num2:");
int num2 = s.nextInt();
System.out.print("请输入num3:");
int num3 = s.nextInt();
if(num1<=num2 && num1<=num3) {
System.out.print(num1+",");
if(num2<=num3) {
System.out.print(num2+","+num3);
}else {
System.out.print(num3+","+num2);
}
}else if(num2<=num1 && num2<=num3){
System.out.print(num2+",");
if(num1<=num3) {
System.out.print(num1+","+num3);
}else {
System.out.print(num3+","+num1);
}
}else if(num3<=num1 && num3<=num2){
System.out.print(num3+",");
if(num1<=num2) {
System.out.print(num1+","+num2);
}else {
System.out.print(num2+","+num1);
}
}else {
System.out.println("???"+num1+"<->"+num2+"<->"+num3+"???");
}
}
|
第2节 switch…case
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
switch(变量){ //变量的数据类型 byte short int char String(jdk1.7+) 枚举
case 常量1: //case的值必须是常量
//代码
break; //break关键字用于执行完当前case之后跳出switch语句,如果不加代码继续向下执行.
case 常量2:
//代码
break;
case 常量3:
//代码
break;
default: //default可选
//代码
break;
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
String season = "summer";
switch (season) {
case "spring":
System.out.println("春");
break;
case "summer":
System.out.println("夏");
break;
case "autumn":
System.out.println("秋");
break;
case "winter":
System.out.println("冬");
break;
default:
System.out.println("季节输入有误");
break;
}
|
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
|
//键盘输入指定月份,打印该月份所属的季节。假如 :1,2,3春季4,5,6夏季7,8,9秋季10,11,12冬季
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("请输入月份:");
int month = s.nextInt();
switch (month) {
case 1:
case 2:
case 3:
System.out.println("春季");
break;
case 4:
case 5:
case 6:
System.out.println("夏季");
break;
case 7:
case 8:
case 9:
System.out.println("秋季");
break;
case 10:
case 11:
case 12:
System.out.println("冬季");
break;
default:
System.out.println("这个月份不存在...");
break;
}
}
|
第三章 循环结构
1
2
3
4
5
6
7
8
9
10
11
12
|
在某些条件满足的情况下,反复执行特定代码的功能
循环语句的四个组成部分
1. 初始化部分
2. 循环条件部分
3. 循环体部分
4. 迭代部分
循环语句分类
1. for 循环
2. while 循环
3. do/while 循环
|
第1节 for循环
1
2
3
4
5
6
|
for(初始化表达式①;布尔条件表达式②;条件修改表达式③){
//循环体语句块④
}
//先执行①
//在执行②,如果条件成立执行④循环体,如果条件表达式不成立,那么循环结束
//在执行③,修改循环条件,然后接着执行②
|
1
2
3
4
5
6
7
|
//求1+2+...+100的和
int sum = 0;
for(int i=1; i<=100; i++) {
sum += i;
}
System.out.println(sum);
|
第2节 while循环
1
2
3
4
5
|
[初始化语句]
while( 布尔值测试表达式){
//语句或语句块;
[更改语句;]
}
|
1
2
3
4
5
6
7
|
int sum = 0;
int i=1;
while(i<=100) {
sum+=i;
i++;
}
System.out.println("sum=" + sum);
|
第3节 do…while循环
1
2
3
4
5
|
[初始化语句]
do{
语句或语句块;
[更改语句;]
}while(布尔值条件表达式);
|
1
2
3
4
5
6
7
|
int sum = 0;
int i=1;
do{
sum += i;
i++;
}while(i<=100);
System.out.println("sum=" + sum);
|
第4节 循环练习
1
|
//打印1~100之间所有是7的倍数的整数的个数及总和
|
1
|
//输出所有的水仙花数,所谓水仙花数是指一个3位数,其各个位上数字立方和等于其本身.例如:153 = 1*1*1+3*3*3+5*5*5
|
第5节 补充循环
1
2
3
4
5
6
7
|
//设计一个无限循环(死循环)
while(true){
//循环体
}
for(;;){
//循环体
}
|
第6节 嵌套循环
1
2
|
将一个循环放在另一个循环体内,就形成了嵌套循环.嵌套循环就是把内层循环当成外层循环的循环体,for while do...while都可以嵌套
如果设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n次
|
1
2
3
4
5
6
7
8
9
10
|
//九九乘法表
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(i+"*"+j+"="+i*j+"\t");
}
System.out.println();
}
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
//1—100之间的所有质数(质数是只能被1和他本身整除的数称为质数,1既不是质数也不是合数)
public static void main(String[] args) {
for (int i = 2; i <= 100; i++) {
boolean b = true;
for (int j = 2; j < i; j++) {
if(i%j==0) {
b=false;
break;
}
}
if(b) {
System.out.println(i);
}
}
}
|
第四章 特殊流程控制
第1节 break语句
1
2
|
break语句用于终止某个语句块的执行
break语句出现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
//单层循环
public static void main(String[] args) {
for (int i = 1; i <= 100; i++) {
if(i==5){
break;//结束当前循环
}
System.out.println(i);
}
}
//双层循环 break只能结束一层循环
public static void main(String[] args) {
for (int j = 1; j <=5 ; j++) {
System.out.println("j="+j);
for (int i = 1; i <= 100; i++) {
if(i==5){
break;//结束当前循环
}
System.out.println("i="+i);
}
}
}
|
1
2
3
4
5
6
7
8
9
10
11
12
|
//按照标记跳转
public static void main(String[] args) {
ii:for (int i = 0; i < 5; i++) {
System.out.println("i="+i);
jj:for (int j = 0; j < 5; j++) {
System.out.println("j="+j);
if(j==1){
break ii; //当j==1时结束ii标记的for循环
}
}
}
}
|
第2节 continue语句
1
2
|
continue语句用于跳过某个循环语句块的一次执行
continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环
|
1
2
3
4
5
6
7
8
9
|
//单层循环
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
if(i==1){
continue;
}
System.out.println(i);
}
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
public static void main(String[] args) {
ii:for (int i = 0; i < 5; i++) {
jj:for (int j = 0; j < 5; j++) {
if(j==1){
continue ii; //当j==1时跳过一次ii标记的for循环
}
System.out.println("j="+j);
}
System.out.println("i="+i);
}
}
/*
结果
j=0
j=0
j=0
j=0
j=0
*/
|
版权声明:本文为Andrew_Chenwq原创文章,遵循
CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。