Java基础(三)选择和循环结构
一、选择结构,条件判断
1、if 语句
一个 if 语句包含一个布尔表达式和一条或多条语句。如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代码。
import static java.lang.Math.round;
public class Conditional {
/**
* 简单if语句
*/
@Test
public void testIf() {
double random = Math.random();
int num = (int) round(random * 10); //创建一个随机整数
System.out.println(num);
if (num < 3) {
System.out.println("num小于3");
} else {
System.out.println("num大于等于3");
}
}
/**
* 简单if, else if,else语句
*/
@Test
public void testIf2() {
double random = Math.random();
int num = (int) round(random * 10); //创建一个随机整数
System.out.println(num);
if (num < 3) {
System.out.println("num小于3");
} else if(num < 6) {
System.out.println("num小于6");
}else {
System.out.println("num大于等于6");
}
}
/**
* 嵌套if语句
*/
@Test
public void testIf3() {
double random = Math.random();
int num = (int) round(random * 10); //创建一个随机整数
System.out.println(num);
if (num < 3) {
System.out.println("num小于3");
} else if(num < 6) {
System.out.println("num小于6");
}else {
if(num == 6){
System.out.println("num等于6");
}
System.out.println("num大于6");
}
}
}
2、switch 语句
switch 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
语法:
switch(变量或者一个表达式){
case 变量的可能值1: 功能语句;
break;
case 变量的可能值2: 功能语句;
break;
case 变量的可能值3: 功能语句;
break;
........
default:功能语句;
}
switch 语句规则:
switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串类型了
switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。
case 后面值的数据类型必须和变量的数据类型一致,而且只能是常量或者字面常量。
当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。
如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。
按照case的值的大小顺序排列,default放最后,default 在没有 case 语句的值和变量值相等的时候执行。default 分支不需要 break 语句。
import static java.lang.Math.round;
public class Conditional1 {
/**
* switch语句
*/
@Test
public void testSwitch(){
double random = Math.random();
int num = (int) round(random * 10);
System.out.println(num);
switch(num){
case 0 :
System.out.println("num为0");
break;
case 1 :
System.out.println("num为1");
break;
case 2 :
System.out.println("num为2");
break;
case 3 :
System.out.println("num为3");
break;
case 4 :
System.out.println("num为4");
break;
case 5 :
System.out.println("num为5");
break;
default :
System.out.println("num大于5");
}
}
}
二、循环结构
1、while循环
先判断条件,再执行语句
2、do-while循环
先执行一次,再判断条件
public class Circulation {
/**
* while循环语句
* 先判断,再执行
*/
@Test
public void testWhile() {
int num = 5;
while (num > 0) {
System.out.println(num);
num -= 1;
}
}
/**
* do-while循环
* 先do执行一次,再判断
*/
@Test
public void testDoWhile() {
int num = 5;
do {
System.out.println(num);
num -= 1;
} while (num > 0);
}
}
3、for循环
for循环执行的次数是在执行前就确定的。
语法:
for(初始化语句A ; 条件判断B; 循环后功能语句C){
//循环体D
}
执行一次循环后,更新循环控制变量,语句C的作用。然后再次检测布尔表达式。循环执行上面的过程。
public class Circulation {
/**
* 简单for循环
*/
@Test
public void testFor() {
int num = 10;
for (int i = 0; i < num; i++) {
System.out.println(i);
}
}
}
4、foreach加强的for循环
Java5 引入了一种主要用于数组的增强型 for 循环。
作用: 主要是用来遍历数组和集合的;
缺点: 没有索引,凡是涉及有索引相关操作还是用普通for循环,
Java 增强 for 循环语法:
for(源中的数据类型 值e: 源){
//代码句子,直接使用值e
}
public class Circulation1 {
/**
* foreach循环
*/
@Test
public void testForeach() {
int[] num = {10, 20, 30, 40, 50};
for (int i : num) {
System.out.println(i);
}
}
}
5、嵌套循环
public class Circulation {
/**
* 嵌套循环实现冒泡排序
*/
@Test
public void test() {
int[] num = {12, 2, 7, 5, 14};
int t = 0;
for (int i = 0; i < num.length-1; i++) {
for (int j = 0; j < num.length-1; j++){
if (num[j] > num[j + 1]) {
t = num[j];
num[j] = num[j + 1];
num[j + 1] = t;
}
}
}
System.out.println(Arrays.toString(num));
}
}
三、循环控制语句
1、break
break 表示终止当前这一层循环,即跳出当前循环。
2、continue
continue 表示跳过本次循环,进入下一次循环。
3、return
return 表示结束当前的方法。
注意:break、continue、return 后面都不能跟任何代码,因为永远都不会执行。
for(源中元素类型 e : 源 ){
直接使用e就可以了
}
Java基础(三)选择和循环结构的更多相关文章
- Java使用三种不同循环结构对1+2+3+...+100 求和
▷//第一种求法,使用while结构 /** * @author 9527 * @since 19/6/20 */ public class Gaosi { public static void ma ...
- java顺序、选择、循环结构
一.顺序结构 二.选择结构 1.if都执行 2.if else if else 条件满足才执行 3.选择结构switch 一个case后有多条语句要加花括号 多个case的值不能相同 case中要加b ...
- Java使用条件语句和循环结构确定控制流
与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流.本文将简单讲解条件.循环和switch. 一.块作用域 块(block),即复合语句.是指由一对大括号括起来的若干条简单的Java语句 ...
- Java基础三(Scanner键盘输入、Random随机数、流程控制语句)
1.引用类型变量的创建及使用2.流程控制语句之选择语句3.流程控制语句之循环语句4.循环高级 ###01创建引用类型变量公式 * A: 创建引用类型变量公式 * a: 我们要学的Scanner类是属于 ...
- Java语法基础(四)----循环结构语句
一.循环结构: 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则 ...
- Java流程控制以及顺序、选择、循环结构
目录 用户交互Scanner Scanner对象 hasNext()与next() hasNextLine()与nextLine() Scanner进阶用法 求和与平均数 顺序结构 选择结构 if单选 ...
- java第三课:分支结构、循环结构
分支结构 1.if后面可以不加{},但是不建议,容易产生误解2.写程序的时候先防屌丝测试,再写逻辑,否则会出错3.if:一条分支 if else:两条分支 if...else if...:多条分支(结 ...
- java基础三种循环的使用及区别
摘要:Java新人初学时自己的一些理解,大神们路过勿喷,有什么说的不对不足的地方希望能给予指点指点,如果觉得可以的话,希望可以点一个赞,嘿嘿,在这里先谢了.在这里我主要说的是初学时用到的Java三个循 ...
- java基础:switch语句应用,循环的详细介绍以及使用,附练习案列
1. switch语句 1.1 分支语句switch语句 格式 switch (表达式) { case 1: 语句体1; break; case 2: 语句体2; break; ... default ...
随机推荐
- bzoj1875 HH去散步
题目链接 一开始特别天真, $Folyd$传递闭包写了一下过了样例就交上去了 然后$gg$ $qwq$ 想了想$……$ 还要写一点东西 最后统计答案的时候有细节要注意 /*************** ...
- php-elasticsearch scroll分页详解
背景 ps:首先我们在一个索引里面写入一万条以上的数据.作为数据源 现在我想看到第一万零一条数据,首先第一想法是,from 10000 size 1 ,这样做会包下面错误.显然是不成立的.此时便会用到 ...
- Lecture notes of Mathematical analysis
Lecture notes of Mathematical analysis Preliminary theory Teaching purpose: Mathematical analysis is ...
- [CQOI2015]标识设计
Luogu3170 128MB过不去 LOJ2099 256MB能卡过 BZOJ3934 512MB怎么都过的去 求在\(30*30\)的方格上放\(3\)个\(L\)的方案 , 有障碍 拓展这条路的 ...
- Struts2和SpringMVC的action是单例还是原型的?
struts2的acion单独使用的时候应是多例的,也就是原型(prototype). 因为它是基于类开发的,它的三种获取页面传参的方式都是通过成员变量的方式来接受的. 如果用struts2框架基于方 ...
- 【中间件】Struts2系列漏洞POC小结
#Struts2-045 ''' CVE-2017-5638 影响范围:Struts 2.3.5 – Struts 2.3.31,Struts 2.5 – Struts 2.5.10 触发条件:基于J ...
- Python——付费/版权歌曲下载
很多歌曲需要版权或者付费才能收听 正确食用方法: 1.找到歌曲编号 2.输入编号并点击下载歌曲 # coding:utf8 # author:Jery # datetime:2019/4/13 23: ...
- es6精华
函数: ES6 允许为函数的参数设置默认值,即直接写在参数定义的后面.function log(x, y = 'World') { console.log(x, y); } log('Hello') ...
- JAVA学习4:用Maven创建Struts2项目
采用struts版本:struts-2.3.8 一.创建一个web项目 参考前面文章,项目名:maven-struts-demo. 二.配置pom.xml文件添加struts2依赖 <pro ...
- Oracle Profile文件
一.Profile文件概述:Profiles是Oracle安全策略的一个组成部分,当Oracle建立数据库时,会自动建立名称为Default的profile,当建立用户没有指定profile,那么or ...