Java关键字break、continue 、return的区别,嵌套循环,数组的概念以及数组案例
一、关键字 break、continue 、return的区别
1、break : 用于在switch。。case中放置语句块穿透,
用于跳出循环
// 从1-100 遇到7的倍数 break
for(int i=1;i<100;i++){
// i==7 跳出循环
if(i%7 == 0 ){
break;
}
System.out.println(i);
}
2、continue: 跳出本次循环,继续下一次循环
for(int i=0;i<100;i++){
if(i%7 == 0 ){
continue; // 跳出本次循环,继续下一次循环
}
System.out.println("i---"+i);
}
3、return : 返回 本次方法
用法1 : 如果return放在循环中, 会跳出循环,且不会执行循环外面的语句 ,
用法2: 作为方法的返回值
用法3 : 无论方法是否有返回值 ,可以在条件判断的位置 直接 return ,
return和break在循环语句块是,break只是结束循环语句块,对于循环外面的代码会执行,而return是结束当前所在方法的剩下的语句块。
public static void main(String[] args) {
for(int i = 1;i<100;i++) {
if (i == 50) {
return;
}
System.out.println("i----"+i);
}
System.out.println("程序结束");
}
public void method1(){
// return 还可以在条件判断的位置 直接返回方法
int n = (int)(Math.random()*10);
if(n%2 ==0){
return ; // 方法的后面就不再运行
}
System.out.println("方法的其他代码块");
}
结论:只要执行return,那么它 后面的代码都不执行。
public int add(){
return 0;
}
return作为方法返回值的关键字 ,
二、嵌套循环 以及案例
嵌套循环: 在一个循环语句中,还包含了另一个循环。例如 在一个for循环中还有一个for循环 ,
它的总的循环次数 = 外循环的次数* 内循环的次数
语法:
for(){ // 外层循环
for(){ // 内层循环
}
}
执行顺序: 外层循环 循环一次 ,内层循环循环完整的一遍
* * * * *
打印直角三角形
*
* *
* * *
* * * *
* * * * *
外循环控制打印几行, 内循环控制打印即可*
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
* * * * * * *
* * * * *
* * *
*
思路 : 考虑一行打多少个空格 多少个*
一共5 行 空格的个数(5-i) *的个数 (2 * i - 1)
i=1 4 1
i=2 3 3
i=3 2 5
i=4 1 7
i=5 0 9
System.out.println("打印正三角形");
for(int i=1;i<=5;i++){
// 先打印空格
for(int k=0;k<5-i;k++){
System.out.print(" ");
}
// 再打印*
for(int j=0;j<2*i-1;j++){
System.out.print("* ");
}
// 换行
System.out.println();
}
九九乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
....
1*9=9 2*9=18 ...... 9*9=81
三、数组的概念以及数组案例
1、容器的概念
用于存储数据的一块内存称为容器,生活中有很多容器,例如 水杯,衣柜,书包,有一定的空间可以存放“东西”
存放在容器中的数据 称为“元素”
2、为什么会存在数组呢?
假如现在要存储全班同学的成绩 , 全班40人,按照定义变量的思维,需要定义40个double类型的变量,每次从40个变量中找某一个变量,操作很麻烦, Java中可以定义一个数据类型存放40个人的成绩 , 这个类型就是数组类型。
数组定义: 它是相同数据类型的有序集合
3、 数组特点
- 数组的长度固定(数组的长度一旦声明,就不能改变)
- 数组中存储的元素数据类型必须相同
- 数组的元素 通过下标访问,且下标默认从0 开始
- 数组类型属于引用数据类型, 数组的元素类型 既可以是基本数据类型,也可以是引用数据类型。
4、创建数组
方式一:
数组存储的数据类型 [] 数组名 = new 数组存储的数据类型[长度];
详解:
数组存储的数据类型 :创建数组容器中可以存储什么数据类型 (基本数据类型 ,引用数据类型)
[] : 表示数组
数组名: 给数组起的名字,遵循标识符规则
new : 创建数组的关键 字
[长度] : 数组的长度 , 这个长度定义后不可改变
例如
int [] arr = new int[3];
new出来的空间在堆内存中,数组是引用数据类型 ,存在内存地址
内存解析: 在堆内存中开辟一段连续的3个长度的int类型的内存空间 ,并由arr变量指向这块内存的地址 (换句话说 arr输出的就是 这个内存的地址)

方式二:
数据类型 [] 数组名 = new 数据类型[]{元素1,元素2,元素3...}
这里的数组长度根据元素的个数自动分配大小
int [] arr = new int[]{90,88,78,92};
或者
int arr [] = new int[]{90,88,78,92}
方式三:
数据类型 [] 数组名 = {元素1,元素2,元素3...};
注意: 这里的元素类型必须满足 数组的元素数据类型
char [] arr = {'a','b','c'};
或者
char arr [] = {'a','b','c'};
5、数组的访问
数组的访问通过索引访问
索引(下标): 每一个数组的元素都有一个编号,这个编号从0开始 , 这个编号称为数组的索引,通过数据名[索引] 访问到数组的原始
例如: 访问数组的第二个元素: 数组名[1]
数组的长度: 数组的长度 声明已固定 ,访问数组的长度 : 数组名.length
数组的最大索引= 数组的长度 -1
数组元素的赋值 :通过索引可以给元素赋值 数组名[索引] = 值
将数据 赋值给 指定索引的 元素
Java关键字break、continue 、return的区别,嵌套循环,数组的概念以及数组案例的更多相关文章
- Java中 break continue return 的区别
1.break break :跳出当前循环:但是如果是嵌套循环,则只能跳出当前的这一层循环,只有逐层break才能跳出所有循环: ; i < ; i++) { ) { break; // 在执行 ...
- 有关于break,continue,return的区别和代码分析
今天,用代码和结果直接解释break,continue,return的区别 1.break代码 public static void breakTest() { //break的讲解 for(int ...
- break,continue,return的区别
break,continue,return的区别 break 当break语句用于循环语句时,会终止执行循环,并执行循环后代码(如果有的话). function main() { for(var i ...
- break,continue,return的区别 x
这三个东西特别坑,一定要记准了!! 1)break 直接跳出当前的循环,从当前循环外面开始执行,忽略循环体中任何其他语句和循环条件测试.他只能跳出一层循环: 注意:如果你的循环是嵌套循环,那么 ...
- 【C#】 break continue return 的区别
static void Main(string[] args) { Console.WriteLine("使用break退出循环"); ; i < ; i++) { ) { ...
- break,continue,return 的区别
(1)break 跳出当前循环体 (2)continue 跳过当前循环体continue后面的代码,继续执行下一个循环 (3)return 和循环没关系,就是跳出该函数
- js中(break,continue,return)的区别
break 一般用于跳出整个循环(for,while) continue 跳出本次循环,进入下一次循环 return 只能出现在函数体内,一旦执行return,后面的代码将不会执行,经常用retur ...
- Java中关键字continue、break和return的区别
Java中关键字continue.break和return的区别: continue:跳出本次循环继续下一次循环 break: 跳出循环体,继续执行循环外的函数体 return: 跳出整个函数 ...
- JavaScript的continue、break和return的区别
1. continue.break和return的区别 循环遍历. for(let i = 0; i < 5; i++){ console.log(i); // 0 1 2 3 4 } 使用co ...
- Java流程控制,for,switch,while.break,continue,return
Java流程控制,for,switch,while.break,continue,return
随机推荐
- 汽车制造工艺 2.5D 可视化组态监控 | 图扑软件
前言 随着世界经济的不断发展,汽车作为一个如今随处可见的物体,从大体上概括是由四大部分组成:发动机.底盘.车身.电气系统.看似简单的几个名词组件,其内部却是由无数的细小零件构成,一辆汽车更是由上万个微 ...
- mapState, mapActions
<template> <div class="box"> <header class="header">分类头部</h ...
- selenium 您的连接不是私密连接的解决办法
一.问题描述 用selenium启动浏览器时,chrome提示您的连接不是私密连接. 二.解决方案 方案1: 在当前页面用键盘输入 thisisunsafe ,不是在地址栏输入,就 ...
- 记某gov门户网站渗透测试(已修复)
前言: 免责声明:涉及到的所有技术仅用来学习交流,严禁用于非法用途,未经授权请勿非法渗透.否则产生的一切后果自行承担! 该渗透测试项目为已授权项目,本文已对敏感部分做了相关处理. 正文: SQL注入( ...
- bat基本操作
一.制作.bat文件:如:新建一个文本文件(.txt)--打开该文件,文件->另存为test.bat,编码为ANSI(支持中文编码): 二.常用写法: 1.输出使用echo:如:echo 文字: ...
- [PKM] 家庭数据中心
1 NAS(Network Attached Storage/网络附属存储) 1.1 NAS的定义 NAS(Network Attached Storage:网络附属存储):具备资料存储功能的装置.按 ...
- [Linux]常用命令之【mkdir/touch/cp/rm/ls/mv】
cp 将来源文件夹packageA下的所有目录及文件复制到新文件夹packageB下,形成: /packageB/... # cp -r /home/packageA/* /home/cp/packa ...
- 5.mapper出错原因
1.总结:前个星期mapper出错,很大原因是自己的项目结构创建有问题,大项目下应该是spring init那种项目结构形式,但是在创建多模块的时候应该是使用moudle形式的项目结构: 所以自己在运 ...
- lnmp中遇到open_basedir配置无效问题
在使用LNMP包安装PHP时,发现直接修改php.ini的配置是无法生效的,其原因竟然是因为nginx的配置文件,覆盖了php.ini的配置. ----------------------– LN ...
- C++11强制类型转换
C++ 强制类型转换有四种关键字:static_cast.const_cast.reinterpret_cast和dynamic_cast.它们用于不同的情况和目的,比C语言的强制类型转换更清晰和安全 ...