一、顺序语句
定义:按照代码顺序从上往下执行所有的代码就是顺序语句
二、if判断语句##
1、if判断语句的格式
① 格式1:适用于一种情况使用。
if(判断的条件){
符合条件执行的代码;
}
② 格式2:适用于两种情况下去使用的。
if(判断条件){
符合条件执行的代码;
}else{
不符合条件执行的代码;
}
if-else 与三元运算符非常像:
三元运算符结构比较简洁,但是三元运算符符合条件必须要返回一个结果,不能执行语句。
③ 格式三: 适用于多种情况下去使用的。
if(判断条件1){
符合条件1执行的代码;
}else if(判断条件2){
符合条件2执行的代码;
}else if(判断条件3){
符合条件3执行的代码;
}......else{
都不符合上述的条件执行的代码;
}
2、if语句要注意的细节
① 如果符合条件后只有一个语句需要执行,那么可以省略大括号;但是建议不要省略,因为结构不清晰
② if语句的判断条件后不能添加分号,否则会影响到执行的效果的
class Demo4.1{
public static void main(String[] args){
//需求1:工作经验要两年或者两年以上
int workAge = 2;
if(workAge>=2){
System.out.println("电话通知你面试");
}
if(workAge>=2){
System.out.println("电话通知你面试");
}else{
System.out.println("电话通知不要再投简历了,不收你!!");
}
//需求2:根据一个变量所记录的数字输出对应的星期。0代表星期天、1代表星期一……
int num = 31;
if(num==0){
System.out.println("星期天");
}else if(num==1){
System.out.println("星期一");
}else if(num==2){
System.out.println("星期二");
}else if(num==3){
System.out.println("星期三");
}else if(num==4){
System.out.println("星期四");
}else if(num==5){
System.out.println("星期五");
}else if(num==6){
System.out.println("星期六");
}else{
System.out.println("没有对应的星期");
}
}
}
3、需求: 键盘录入一个分数,根据分数输出对应的等级
比如: 10090[A等级]、8980[B等级]……其余[E等级]
录入数据的步骤:创建一个扫描器对象 > 调用扫描器对象的nextInt方法扫描数据 > 导入包
import java.util.*;
class Demo4.2{
public static void main(String[] args){
//创建一个扫描器
Scanner scanner = new Scanner(System.in);
//调用扫描器扫描键盘录入的数据
System.out.println("请输入一个分数:");
int score = scanner.nextInt(); //定义了一个num变量接收扫描到内容
System.out.println("录入的数据是:"+score);
if(score>=90&&score<=100){
System.out.println("A等级");
}else if(score>=80&&score<=89){
System.out.println("B等级");
}else if(score>=70&&score<=79){
System.out.println("C等级");
}else if(score>=60&&score<=69){
System.out.println("D等级");
}else if(score>=0&&score<=59){
System.out.println("E等级");
}else{
System.out.println("补考..");
}
}
}
三、switch选择判断语句##
1、switch语句的格式
switch(你的选择){
case 值1:
符合值1执行的代码;
break;
case 值2:
符合值2执行的代码;
break;
case 值3:
符合值3执行的代码;
break;
case 值4:
符合值4执行的代码;
break;
......
default:
你的选择都符合上述的选项时执行的代码;
break;
}
2、switch语句要注意的事项
① switch语句使用的变量只能是byte、 char、 short、int、 String数据类型,String数据类型是从jdk7.0的时候开始支持的。
② case后面跟的数据必须是一个常量。
③ 停止条件:switch语句一旦匹配上了其中的一个case语句,那么就会执行对应的case中的语句代码,执行完毕之后如果没有遇到break关键字或者是结束switch语句的大括号,那么switch语句不会再判断,按照代码的顺序从上往下执行所有的代码;直到遇到break或者是结束siwitch语句的大括号为止。
④ 在switch语句中不管代码的顺序如何,永远都是会先判断case语句,然后没有符合的情况下才会执行default语句。
⑤ if–else if—else if 语句与switch语句非常的相似:
switch语句的结构清晰,但是如果判断的条件是一个区间范围的,使用switch操作就非常的麻烦了。
3、需求: 接受键盘录入一个月份, 根据对应的月份输出对应的季节。
3 4 5 [春天]
6 7 8 [夏天]
9 10 11 [秋天]
1 2 12 [冬天]
要求使用switch语句实现。
import java.util.*;
class Demo4.3{
public static void main(String[] args){
System.out.println("请输入一个月份:");
//创建一个扫描器
Scanner scanner = new Scanner(System.in);
//调用扫描器的nextInt方法
int month = scanner.nextInt();
switch(month){
case 3:
case 4:
case 5:
System.out.println("春天");
break;
case 6:
case 7:
case 8:
System.out.println("夏天");
break;
case 9:
case 10:
case 11:
System.out.println("秋天");
break;
case 12:
case 1:
case 2:
System.out.println("冬天");
break;
default:
System.out.println("没有对应的季节");
break;
}
}
}
四、while循环语句
1、while循环 语句的格式
while(循环的条件){
循环语句;
}
2、while循环语句要注意的事项
① while循环语句一般是通过一个变量控制其循环的次数,其中Ctrl+C可以强制退出死循环。
② while循环语句的循环体代码如果只有一个语句的时候,那么可以省略大括号,但是不建议省略
③ while循环语句的判断条件后面不能跟有分号,否则会影响到执行的效果。
3、需求: 计算1+2+3+…+ 100的总和。
class Demo4.4{
public static void main(String[] args){
int num = 1;
int sum = 0;//定义一个变量用于保存每次相加的结果
while(num<=100){
sum = sum+num;
num++;
}
System.out.println("sum = "+ sum);
}
}
4、需求:实现猜数字游戏, 如果没有猜对可以继续输入你猜的数字,如果猜对了停止程序。最多只能猜三次,如果还剩下最后一次机会的时候要提醒用户。
创建一个随机数的步骤:创建一个随机数对象 > 调用随机数对象的nextInt方法 > 导包
import java.util.*;
class Demo4.5{
public static void main(String[] args){
//创建一个随机数对象
Random random = new Random();
//调用随机数对象的nextInt方法产生一个随机数
int randomNum = random.nextInt(10)+1; //要求随机数是:1~10
//创建一个扫描器对象
Scanner scanner = new Scanner(System.in);
boolean flag=true;
while(flag){
System.out.println("请输入你要猜的数字:");
//调用扫描器的nextInt方法扫描一个数字
int guessNum = scanner.nextInt();
if (guessNum>randomNum){
System.out.println("猜大了..");
}else if(guessNum<randomNum){
System.out.println("猜小了..");
}else{
System.out.println("恭喜你,猜对了`..");
break;
}
}
}
}
五、do-while循环语句
1、格式
do{
循环语句;
}while(判断条件);
2、while循环语句与do-while循环语句的区别
while循环语句是先判断后执行循环语句的;do-while循环语句是先执行,后判断;不管条件是否满足至少会执行一次。
class Demo4.6{
public static void main(String[] args){
//在java中,java编译器是不允许写废话。
int count=0;
do
{
System.out.println("hello world");
count++;
}while(count<5);
}
}
3、需求: 使用do-while算出1-100之间偶数的总和。
class Demo4.7{
public static void main(String[] args){
int num = 1;
int sum = 0;//定义一个变量用于保存每次相加的总和
do{
if(num%2==0){
sum += num;
}
num++;
}while(num<101);
System.out.println("sum = "+ sum);
}
}
六、for循环语句##
1、for循环语句的格式
for(初始化语句;判断语句;循环后的语句){
循环语句;
}
2、for循环语句要注意的事项:
① for(;;)
这种写法是一个死循环语句,相当于while(true)
② for循环语句的初始化语句只会第一次循环的时候执行一次
③ for循环语句的循环体语句只有一句时,可以省略大括号不写,但不建议省略
3、需求: 在控制上打印五句hello world
class Demo4.8{
public static void main(String[] args){
for(int count = 0 ; count<5; count++){
System.out.println("hello world");
}
}
}
4、需求: 在控制台上打印一个五行五列的矩形
*****
*****
*****
*****
*****
class Demo4.9{
public static void main(String[] args){
for(int j = 0 ; j<5 ; j++){ //控制行数
for(int i = 0 ; i<5 ; i++){ //控制列数
System.out.print("*");
} // *****
System.out.println();//换行
}
}
}
5、需求: 在控制台上打印一个五行的正立的直角三角形
*
**
***
****
*****
class Demo4.10{
public static void main(String[] args){
for(int i = 0 ; i< 5 ; i++){
for(int j = 0 ; j<=i ; j++){ //控制列数
System.out.print("*");
}
System.out.println();//换行
}
}
}
6、需求: 打印一个倒立的五行的直角三角形
*****
****
***
**
*
class Demo4.11{
public static void main(String[] args){
for(int i = 0 ; i<5; i++){
for (int j = 0 ; j<(5-i) ;j++ ){
System.out.print("*");
}
System.out.println();//换行
}
}
}
7、需求: 打印一个九九乘法表
class Demo4.12{
public static void main(String[] args){
for(int i = 1 ; i<=9 ; i++){
for(int j = 1 ; j<=i ; j++){ //控制列数
System.out.print(i+"*"+j+"="+i*j+"\t");
}
System.out.println();//换行
}
}
}