逻辑控制语句
1.顺序结构
2.条件分支结构
如果xxx 就xxx : if
如果xxx 就xxx, 否则 就xxx : if … else
如果xxx 就xxx, 否则如果xx 就xx, 否则如果…否则
if - else if - else if … - else
switch() - case:仅适用于判断是否相等的情况
int\char\short\byte
JDK1.7之后,也支持字符串 String “” ;
3.循环结构
循环是程序设计语言中反复执行某些代码的一种计算机处理过程,是一组相同或相似语句被有规律的重复性执行。
循环的要素:
– 循环体(相同或相似的语句)
– 循环条件(继续执行循环的条件,某些情况下循环条件以循环次数的方式体现)
for循环: 有规律,或者知道次数
求 1 ~ 100 的和
求 20!
求 1/3 + 3/5 + 5/7 + …95/97
题目:有一对兔子,从第3个月开始,每个月再生一对兔子,每个月有多少只兔子, 20个月一共有多少个兔子
public class Rabbit {
public static void main(String[] args) {
/*
一对兔子,第三个月开始每个月生一对,直到20个月
*/
int a=1;
int b=2;
int c=0;
for(int i=4;i<=20;i++){
c=a+b;
a=b;
b=c;
}
System.out.println(c);
}
}
while(条件)循环: 当…的时候, 就…
- 计算boolean表达式的值
- 如果值为true则执行语句块;语句块执行完后再次判断boolean表达式的值,如果为true则继续执行语句块;如此循环往复,直到boolean为false时退出while循环。
特点: 不确定循环次数
题目:先随机生成一个1~100的整数, 用户猜数字[控制台输入]
import java.util.Scanner;
public class guessnumber {
public static void main(String[] args) {
int x=76;
System.out.println("猜猜这个数字是啥,提醒一下,在0-100之前哦,按0退出游戏");
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
while(num==x){
System.out.println("什么鬼运气,这就给你中了!");break;
}
while(num!=x){
if(num==0){
System.out.println("退出成功,你这个弱者,为什么不能坚持下去呢?!");
break;
}
if(num<x){
System.out.println("太小了啊,再猜一次看看,当然如果你想退出可以输入0");
}else if(num>x){
System.out.println("太大了啊,再猜一次看看,当然如果你想退出可以输入0");
}
num=sc.nextInt();
if(num==x){
System.out.println("哎~你可算猜对了");
}
}
sc.close();
}
}
do-while(条件)循环: 做… 直到…
do-while语句的执行逻辑
- 先执行语句块
- 再计算boolean表达式的值,如果值为true,再次执行语句块;如此循环往复,直到boolean为false为止。
在一定程度上,两种循环可以互相替换
特殊: 在第一次循环条件就不满足的时候