第二章Java程序设计基础——流程控制和数组

目录

一.程序流程控制

(一)分支结构

(1)if语句

(2)switch语句

(二)循环结构

(1)for语句

(2)while语句

(3)do-while语句

(4)死循环

(5)循环嵌套

(6)break、continue关键字

二.数组

(1)数组及静态数组

(2)数组的另一种定义动态数组


一.程序流程控制

程序的三种执行顺序:顺序结构、分支结构、循环结构

(一)分支结构

分支结构的语句:if、switch

(1)if语句

if语句作用:根据条件的真或假,来决定执行某段代码

if语句的格式:if(条件)语句;

(2)switch语句

switch语句的作用:是通过比较值是否相等,来决定执行哪条分支。

switch语句的格式:switch(表达式){case 字面量:语句……}

switch分支的执行流程:

  • 执行表达式的值,再拿着这个值去与case后的值进行匹配。
  • 与哪个case后的值匹配为true就执行哪个case块的代码,遇到break就跳出switch分支。
  • 如果全部case后的值与之匹配都是false,则执行default块的代码。

switch的注意事项:

  • 表达式类型只能是byte、short、int、char, JDK5开始支持枚举,JDK7开始支持String、不支持double、float、long(注意:在C语言中switch表达式里不能出现字符串,case后也不能出现字符串。)
  • case给出的值不允许重复,且只能是字面量,不能是变量。
  • 正常使用switch的时候,不要忘记写break,否则会出现穿透现象(往下继续执行语句)。

(二)循环结构

循环结构的语句:for、while、do-while

(1)for语句

for语句的格式:for(初始化语句;循环条件;迭代语句)

                          循环体语句

for语句执行顺序:第一次先“初始化语句”再判“循环条件”若成立则执行“循环体语句”,然后在执行“迭代语句”再返回执行“循环条件”直至循环条件不成立跳出循环。

(2)while语句

while语句的格式:while(循环条件)

                  循环体语句
while语句的执行顺序是:先执行“循环条件”若成立执行“循环体”语句然后再返回执行“循环条件”直至循环条件不成立跳出while语句。

(3)do-while语句

do-while语句的格式:

do{

循环体语句

}while(循环条件);

do-while语句的执行顺序是:先执行“循环体语句”再执行“循环条件”如果成立则继续执行“循环体语句”直到循环条件不成立。

注:do-while语句无论如何都会先执行一次循环体语句。

总结:

  • for循环 和 while循环(先判断后执行);do...while(先执行后判断)。
  • for循环和while循环的执行流程是一模一样的,功能上无区别,for能做的while也能做,反之亦然。
  • 使用规范:如果已知循环次数建议使用for循环,如果不清楚要循环多少次建议使用while循环。

(4)死循环

死循环:可以一直执行下去的一种循功,如果没有干预不会停下来。

死循环的写法:

(5)循环嵌套

循环嵌套:形如循环中又包含循环,叫做循环嵌套。

循环嵌套的特点:外部循环每循环一次,内部循环会全部执行完一轮。

(6)break、continue关键字

break:跳出并结束当前所在循环的执行。

continue:用于跳出当前循环的当次执行,直接进入循环的下一次执行。

注意:

break :只能用于结束所在循环,或者结束所在switch分支的执行。

continue :只能在循环中进行使用。

二.数组

数组分为:数组(一维数组)、多维数组(一般用最多的是二维数组)。

数组的概念:数组是一个数据容器,可用来存储一批同类型的数据。

静态数组的概念:指数组的初始化赋值叫做静态数组。

静态数组的定义格式:

数据类型[] 数组名={元素1,元素2 ,元素3,…. };

数据类型[] 数组名 = new 数据类型[]{元素1,元素2 ,元素3..};

数组的访问格式是:数组名[索引](索引相当于C语言的下标)

注:

数组定义格式:数据类型[] 数组名;或数据类型 数组名[];

索引代表数组的元素编号,从0开始计数。

数组还有专门的获取数组长度(元素个数)的方法,其格式如下:

数组名.length

动态数组的格式是:数据类型[] 数组名=new 数据类型[长度]
动态数组:动态初始化数组,只确定数组的类型和存储数据的容量。不事先存入具体的数据。

以下是对数组从键盘赋值的操作:

注:利用创建sc对象进行对键盘输入赋值

注:

在Java中的长度可以是变量,也可以是字面量,其实也C语言动态开辟一样其中格式一定要这样:

二维数组的概念:数组中的每个元素都是一个一维数组,这个数组就是二维数组。

静态初始化格式:

动态初始化:

二维数组的访问:

数组名[行索引][列索引],通过行列访问数据。

猜你喜欢

转载自blog.csdn.net/2403_88453964/article/details/146394187
今日推荐