if语句
//if语句第三种格式
if(关系表达式1) {
语句体1;
}else if (关系表达式2) {
语句体2;
}
…
else {
语句体n+1;
}
执行流程
首先判断关系表达式1看其结果是true还是false
如果是true就执行语句体1
如果是false就继续判断关系表达式2看其结果是true还是false
如果是true就执行语句体2
如果是false就继续判断关系表达式…看其结果是true还是false
…
如果没有任何关系表达式为true,就执行语句体n+1
Switch语句
//switch语句格式
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
* 1.表达式的类型:整型byte short int 字符型char JDK5枚举Enum JDK7字符串String * 2.允许在case分支中,放置能够自动转换的值 * 3.有若干个case分支组成,不允许case分支重复出现,一旦遇到break则结束 * 4.根据switch表达式的值,直接跳转至匹配的case分支,若都未匹配,则直接执行default默认分支
for语句
// for循环实现1-5之间数据求和
public class ForTest2 {
public static void main(String[] args) {
//定义求和变量,初始化值是0
int sum = 0;
//获取1-5之间的数据,用for循环实现
for(int x=1; x<=5; x++) {
//把每一次获取到的数据,累加起来就可以了
//sum = sum + x;
/**
第一次:sum = 0 + 1 = 1
第二次:sum = 1 + 2 = 3
第三次:sum = 3 + 3 = 6
第四次:sum = 6 + 4 = 10
第五次:sum = 10 + 5 = 15
*/
sum += x;
}
//输出求和结果
System.out.println("sum:"+sum);
}
}
while语句
//while循环语句的基本格式
public class WhileDemo {
public static void main(String[] args) {
//输出10次HelloWorld
/**
for(int x=1; x<=10; x++) {
System.out.println("HellloWorld");
}
*/
//while循环实现
int x=1;
while(x<=10) {
System.out.println("HellloWorld");
x++;
}
}
}
三种循环的区别
虽然可以完成同样的功能,但是还是有小区别:
do…while循环至少会执行一次循环体。
for循环和while循环只有在条件成立的时候才会去执行循环体
for循环语句和while循环语句的小区别:
控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
循环的使用推荐:
for -- while -- do...while
跳出循环break
break的使用场景:
在选择结构switch语句中
在循环语句中
注意:
离开使用场景的存在是没有意义的,不能单独使用
break的作用:
跳出单层循环,让循环提前结束
跳出循环continue
在循环语句中
离开使用场景的存在是没有意义的
continue的作用:单层循环对比break,然后总结两个的区别
break 退出当前循环
continue 结束本次循环,进入循环的下一次
嵌套循环
for(初始化表达式①; 循环条件②; 步进表达式⑦) {
for(初始化表达式③; 循环条件④; 步进表达式⑥) {
执行语句⑤;
}
}
生成随机数
我们想产生1~100(包含1和100)的随机数该怎么办呢? 我们不需要自己去写算法,因为Java已经为我们提供好了产生伪随机数的类---Random
作用
– 用于产生一个伪随机数
使用步骤(和Scanner类似)
– 导包
• import java.util.Random;
– 创建对象
• Random r = new Random();
– 获取伪随机数
• int number = r.nextInt(10);
• 产生的数据在0到10之间,包括0,不包括10。
• 括号里面的10是可以变化的,如果是100,就是0-100之间的数据