首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【Java基础】流程控制语句和数组

【Java基础】流程控制语句和数组

作者头像
全栈开发日记
发布2022-05-12 19:56:03
发布2022-05-12 19:56:03
7590
举报
文章被收录于专栏:全栈开发日记全栈开发日记

什么是流程控制语句?

程序执行是过程化的,也就是说在默认情况下程序是从上到下依次执行,但是有些情况下我们想让他选择执行某部分,或者反复执行某部分,这就是流程控制。

在Java语言中流程控制语句一般分为两大类:一类是判断语句,其中包括if...else...if...elseif...switch等等;另一类是循环语句,其中有forwhiledo...while等等。

下面我们来逐个详细看一下:

if语句

if语句是最基础的流程控制语句,其语法为:

代码语言:javascript
复制
if(条件){
    执行体
}

此处需要注意的是条件必须是布尔类型的。因为是最基础的流程控制,所以只对条件为true时做了处理,条件为false时会跳过此段代码。

if...lese语句

if...else语句是if语句的升级版,其语法为:

代码语言:javascript
复制
if(条件){
    执行体1
}else{
    执行体2
}

很明显,相对于上面的if语句,它多了一个else和执行体2,那就说明他对条件为false时做了处理,使流程控制更加完善。

if...else if语句

if...else if语句一般用于多条件判断,其语法为:

代码语言:javascript
复制
if(条件1){
    执行体1
}else if(条件2){
    执行体2
}
...
else if(条件n){
    执行体n
}else{
    执行体
}

不过此语法太过繁琐,在实际开发过程中更偏向于使用下面的switch语句。

switch语句

switch语句语法:

代码语言:javascript
复制
switch(表达式){ 
case 常量1: 
        执行体; break;
    case 常量2:
        执行体; break;
    ...
    default: 
        执行体; break; 
}

switch语句执行流程是将表达式和case后的常量进行比较,和那个case后的常量相同,就执行那个case后的程序,遇到break就结束。

此处要注意switch中case具有穿透性,执行完case后的程序后,如果没有break,那么会继续执行后面case的执行体,知道遇到break或者switch结束。

while循环

while循环是最基础的循环结构,格式是:

代码语言:javascript
复制
 while(条件){
     循环体
 }

当条件为一直判断为true时,会使程序进入死循环状态,这个时候可以选择在程序最下方添加自增量,从而使条件改变。

do...while循环

do...while循环是在whild循环的基础上先执行了一次循环体,其格式为:

代码语言:javascript
复制
do{
    循环体
}while(条件)

for循环

for循环相对于上面两种循环有所不同,它增加了初时变量和自增量,使得循环次数更加可控,格式为:

代码语言:javascript
复制
for(初始化变量;条件;自增量){
    循环体
}

当条件一直为true时为死循环,此时初始化变量和自增量可以不写。当小括号里只有 (;;) 时也是死循环。

增强for循环

增强for底层使用的是迭代器,使用for循环的格式,简化了迭代器的特点,一般用来遍历数组和集合,格式如下:

代码语言:javascript
复制
for(集合(数组)的数据类型 变量名:集合(数组)名){
    方法体
}

增强for是jdk1.5以后出现的新特性,所有的单列集合都可以使用增强for,但是只能遍历,不能操作。

关于以上迭代器和集合等诸多新名词,将在后续文章讲解

嵌套循环-循环次数的计算

很多地方会用到嵌套循环,最经典的就是冒泡排序算法,那么要怎么计算循环次数呢?有如下公式:

总循环次数=内循环次数*外循环次数

数组

数组,顾名思义,一堆数据的组合。数组分一维数组和多维数组,其中多维数组最常用的还是二维数组。

如何创建数组?

代码语言:javascript
复制
//创建一维数组
数据类型[] 变量名=new 数据类型[存储个数];
数据类型[] 变量名=new 数据类型[元素 1,元素 2,...];
数据类型[] 变量名={元素 1,元素 2,...};

//创建多维数组,其原理就是数组中的数组,数组中存放数组
数据类型[][] 变量名= new 数据类型[数组长度][存放的数组长度];

数组需要注意什么?

  1. 数据就是一个容器
  2. 数组是强制数据类型语言,必须有大小
  3. 存储到数组中的每一个元素,都有自己的编号(也称为索引、下标)。采用自动编号,最小值为0,最大值为长度-1。
  4. 访问数据中的元素:数组名[索引]。
  5. 获取数组长度:数组名.length
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-18,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 什么是流程控制语句?
  • if语句
  • if...lese语句
  • if...else if语句
  • switch语句
  • while循环
  • do...while循环
  • for循环
  • 增强for循环
  • 嵌套循环-循环次数的计算
  • 数组
  • 如何创建数组?
  • 数组需要注意什么?
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档