java结构和数组

选择结构

一、if选择结构

1. 基本if

处理单一或组合条件的情况

(1)语法和流程图:
if(条件){
	//代码块
}

在这里插入图片描述

2. if-else选择结构

处理简单的条件分支情况。这种新式结构简单,但在实际开发中使用非常频繁。

(1)语法和流程图:
if(条件){
	//代码块1
}else{
	//代码块2
}

在这里插入图片描述

3. 多重if选择结构

处理连续区间的条件分支情况。多重if选择结构在解决需要判断的条件是连续的区间时有很大的优势。else if 块可以有多个,也可以没有;else块最多有一个或没有,else块必须要放在else if块之后。

(1)语法和流程图:
if(条件1){
	//代码块1
}else if(条件2){
	//代码块2
}else{
	//代码块3
}

在这里插入图片描述

4. 嵌套if选择结构

处理复杂的条件分支情况。在if选择结构中又包含一个或多个if选择结构的情况,这种结构一般用于较为复杂的流程控制中。

(1)语法和流程图:
if(条件1){
	if(条件2){
	//代码块1
	}else{
	//代码块2
}else{
	//代码块3
}

在这里插入图片描述

5. 流程图的符号汇总

流程图是逐步解决指定问题的步骤和方法的一种图形化表示方法。

在这里插入图片描述

6. 常用逻辑运算符

&&:与、并且

两个条件同时为真,则结果为真;两个条件有一个为假,则结果为假

||:或、或者

两个条件有一个为真,则结果为真;两个条件同时为假,则结果为假

!:非

条件为真时,结果为假;条件为假时,结果为真

二、switch选择结构

1.语法
switch(表达式){
	case常量1:
		//代码块1;
		break;
	case常量2:
		//代码块2;
		break;
		……
	default:
		//代码块n
		break;
}
2.关键字

关键字是被 java 已经征用了的,有特殊含义。

switch:表示“开关”,就是switch关键字后面小括号里表达式的值, JDK1.7 后,switch语句小括号里可以是int、short、byte、char、枚举类型、String类型表达式。

case:表示“情况,情形”,case后是int、short、byte、char、枚举类型、String类型表达式,通常是一个固定值。case块可以有多个,顺序可以改变,但是每个case后常量的值必须各不相同。

default:表示“默认”,即其他情况都不满足。default后要紧跟冒号。default块和case块的先后顺序可以变动,不会影响程序执行的结果。default块放在末尾,也可以省略。

break:表示“停止”,即跳出当前结构。

循环结构

循环结构由循环条件和循环操作构成。只要满足循环条件,循环操作就会反复执行。循环不是无休止进行的,满足一定条件的时候循环才会继续,称为“循环条件”,循环条件不满足的时候,循环退出;其次循环结构是反复进行相同的或类似的一系列操作,称为“循环操作”。

使用循环解决问题的步骤:分析循环条件和循环操作,套用循环的语法写出代码,检查循环能否退出

编写循环结构代码时需注意:循环变量的初值、循环操作中对循环变量值的改变和循环条件三者间的关系;确保循环次数正确,不要出现“死循环”。

一、while循环结构

1.什么是while循环结构

关键字while后小括号中的内容是循环条件。循环条件是一个表达式,它的值为boolean值,即true或false。{ }中的语句统称为循环操作,又称为循环体。

(1)语法和流程图:
while(循环条件){
    //循环操作
}

在这里插入图片描述

(2)执行顺序:

a. 声明并初始化循环变量

b. 判断条件是否满足条件,如果满足则执行循环操作;否则退出循环

c. 执行完循环操作后,再次判断条件,决定继续执行循环还是退出循环

while循环结构如果第一次判断条件就不满足,则会直接跳出循环,循环操作一遍都不会执行。它的特点是:先判断,后执行。

2.程序调试
(1)什么是程序调试

当程序存在错误的时候,我们需要专门的技术来发现和定位错误,这个技术就是“程序调试”,也称为“debug”。满足暂停程序、观察变量和逐条执行语句等功能的工具总称为程序调试。

(2)如何进行程序调试

a. 分析错误,设置断点

断点用来调试的时候确定程序停在某一行代码处,以便发现程序错误

b.启动调试,单步执行

启动调试后,MyEclipse 会提示或自动转到调试视图,并在断点处停下来。( F5 :“单步跳入”,会进入本行代码内部执行,如进入方法内部。 F6 :“单步跳过”,仅执行本行代码,执行完则跳到下一行代码。)

二、do-while循环结构

1.什么是do-while循环结构

关键字do开头,然后是大括号括起来的循环操作,接着是while关键字和紧随的小括号括起来的循环条件。do-while循环结构以分号结尾。

(1)语法和流程图:
do{
    //循环操作
}while(循环条件);

在这里插入图片描述

(2)执行顺序

a.声明并初始化循环变量

b.执行一遍循环操作

c.判断循环条件,如果循环条件满足,则循环继续执行,否则退出循环

do-while循环特点是先执行,在判断。循环操作至少执行一遍。

三、for循环结构

1.什么是for循环结构

循环语句的主要作用是反复执行一段代码,直到满足一定的条件为止。for循环结构可分为四个部分:

初始部分:设置循环的初始状态

循环体:重复执行的代码

迭代部分:下一次循环开始前要执行的部分

循环条件:判断是否继续循环的条件

(1)语法
for(表达式1;表达式2;表达式3){
    //循环体
}
(2)执行顺序

a.执行初始部分

b.进行循环条件判断

c.根据循环条件判断结果

d.执行迭代部分,改变循环变量值

e.重复执行,直到退出for循环结构

2. break和continue的使用

break:用于终止某个循环,使程序跳到循环体外的下一条语句。它不仅可以循环中,也可以用在if条件语句中。

continue:用于跳出本次循环,进入下一次循环的语句。它只能用在循环结构中。

四、while、do-while和for的异同

1.相同点

都是循环结构,都有必不可少的四个部分:初始部分、循环条件、循环体、迭代部分。

2.不同点
(1)语法不同

while:

while(循环条件){
    //循环操作
}

do-while:

do{
    //循环操作
}while(循环条件);

for:

for(表达式1;表达式2;表达式3){
    //循环体
}
(2)执行次序不同

while循环结构先判断,在执行。

do-while循环结构先执行,在判断,循环体至少执行一次。

for循环结构先执行初始化部分,再进行条件判断,然后执行循环体,最后进行迭代部分的计算。

(3)适用情况不同

在解决问题时,对于循环次数确定的情况,通常选用for循环结构;对于循环次数不确定的情况,通常选用while和do-while循环结构。

五、二重循环

1.什么是二重循环

二重循环就是一个循环体内又包含另一个完整的循环结构。循环结构包括循环条件和循环操作。while循环、do-while循环和for循环,是可以互相嵌套的,一个循环要完整的包含在另一个循环中,如以下:

while与while:

while(循环条件1){
    //循环操作1
    while(循环条件2){
        //循环操作2
    }
}

do-while与do-while:

do{
    //循环操作1
   do{
        //循环操作2
    } while(循环条件2);
}while(循环条件1);

for与for:

for(循环条件1){
    //循环操作1
    for(循环条件2){
        //循环操作2
    }
}

while与for:

while(循环条件1){
    //循环操作1
    for(循环条件2){
        //循环操作2
    }
}

数组

一、数组概述

1.什么是数组

数组就是一个变量,用于将相同数据类型的数据存储在内存中。数组中的每一个数据元素都属于同一数据类型。数组只有一个名称,即标识符。每个元素可以通过下标来访问,由于元素是按顺序存储的,每个元素固定对应一个下标,因此可以通过下标快速访问元素。数组的大小(长度)是数组可容纳元素的最大数量。

数组的基本要素:标识符、数组元素、数组下标、、元素类型。

2.如何使用数组
(1)声明数组

语法:

数据类型[] 数组名;

数据类型 数组名[];

(2)分配空间

语法:

数组名 = new 数据类型[数组长度];

(3)赋值

语法:

数组名[下标值];

数据类型 [] 数组名 = {值1,值2,值3,······,值n};

(4)对数据进行处理

数组一经创建,其长度(数组中包含元素的数目)是不可改变的,如果越界(即数组下标超过0至数组长度-1的范围),程序会报错。

3.常见错误
(1)数组下标从0开始
(2)数组访问越界

实例代码:

public class Erroro{
    public static void main(String[] args){
        int[] scores = new int[2];
        scores[0] = 90;
        scores[1] = 85;
        scores[2] = 62;
        System.out.println(scores[2]);
    }
}

实例图:
在这里插入图片描述

二、数组应用

1.数组排序

语法:

Arrays. sort(数组名);

Arrays 是 java 中提供的一个类,而sort( )是该类的一个方法。即将数组名放在sort( )方法的括号中,就可以完成对该数组的排序。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值