03Java学习day(3)

在条件语句、选择语句和循环语句上,Java 的代码编写等同于 C++。

if-else 语句

当条件成立时,执行某些语句;否则执行另一些语句。

不一定非有 else ,也不一定只有一个 else

比如进行年龄的筛选,小于 20 岁输出年轻人,大于 60 岁输出老年人,否则为中年人。

java 复制代码
public class ifdemo {  
    public static void main(String[] args) {  
        int age=25;  
        if(age<20){  
            System.out.println("年轻人");  
        }else if(age>60){  
            System.out.println("老年人");  
        }else System.out.println("中年人");  
    }  
}

输入三个整数,输出三个数中最大的那个。

java 复制代码
import java.util.Scanner;  
  
public class ifdemo {  
    public static void main(String[] args) {  
        Scanner sc = new Scanner(System.in);  
        int a = sc.nextInt(),b = sc.nextInt(),c = sc.nextInt();  
        if(a>b){  
            if(a>c){System.out.println(a);}  
            else{System.out.println(c);}  
        }else {  
            if(b>c)System.out.println(b);  
            else{System.out.println(c);}  
        }    }}

常用的比较运算符

大于 >
小于 <
大于等于 > =
小于等于 <=
等于 ==
不等于 !=
再来一个闰年的判断:
java 复制代码
import java.util.Scanner;  
  
public class ifdemo {  
    public static void main(String[] args) {  
        Scanner sc = new Scanner(System.in);  
        int year = sc.nextInt();  
        if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {  
            System.out.println(year + "是闰年");  
        }else System.out.println(year + "不是闰年");  
    }  
}

switch 语句

注意: swtich 语句中如果不加 break 语句,则从上到下匹配到第一个 case 后,会顺次执行后面每个 case 中的语句。

default:表示所有情况都不匹配的时候,就执行该处内容,和if语句中的else相似

java 复制代码
import java.util.Scanner;
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in); 
        System.out.print("请输入一个数字(1-7)代表星期几:");
        String name;
        int day = sc.nextInt();  
        switch(day){
            case 1:{
                name="Monday";
                break;
            }
            case 2:{
                name="Tuesday";
                break;
            }
            case 3:{
                name="Wednesday";
                break;
            }
            case 4:{
                name="Thursday";
                break;
            }
            case 5:{
                name="Friday";
                break;
            }case 6:{
                name="Saturday";
                break;
            }case 7:{
                name="Sunday";
                break;
            }
            default: name="I don't know!";
        }
        System.out.println(name);
    }
}

for 循环

java 复制代码
for (init-statement; condition; expression) {
    statement
}

在循环中需要初始化语句、条件判断语句、条件控制语句。

init-statement 可以是声明语句、表达式、空语句,一般用来初始化循环变量;

condition 是条件表达式,可以为空,空语句表示 true

expression 一般负责修改循环变量,可以为空。

在一行中输出斐波那契数列的前 N 项,数字之间用空格隔开。

java 复制代码
import java.util.Scanner;
public class Main{
    public static void main(String[] args)
    {
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt();
        int a=0,b=1;
        for(int i=0;i<n;i++)
        {
            System.out.printf("%d ",a);
            int c=a+b;
            a=b;
            b=c;
        }
    }
}

在循环中可能会使用 breakcontinue 语句。

比如在判断质数中:

java 复制代码
import java.util.Scanner;
public class Main{
    public static void main(String[] args)
    {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        boolean isPrime = true;
        for(int i=2;i<=n/i;i++)
        {
            if(n%i==0){
                isPrime=false;
                break;
            }
        }
        if(isPrime)System.out.println("YES");
        else System.out.println("NO");
    }
}

在求 1~100 的所有偶数之和:

java 复制代码
import java.util.Scanner;
public class Main{
    public static void main(String[] args)
    {
        int sum=0;
        for(int i=1;i<=100;i++)
        {
            if(i%2==1)continue;
            sum+=i;
        }
        System.out.printf("从1到100的偶数和为:%d",sum);
    }
}

while 循环

这东西其实和 for 循环差不了多少。只不过是括号里只剩了一个条件判断语句。

求 1~100 中所有数的立方和:

java 复制代码
public class Main{
    public static void main(String[] args)
    {
        int i=1,sum=0;
        while(i<=100)
        {
            sum+=i*i*i;
            i++;
        }
        System.out.println(sum);
    }
}

do-while 循环

do while 语句与 while 语句非常相似。唯一的区别是,do while 语句限制性循环体后检查条件。不管条件的值如何,都要至少执行一次循环。

在写循环的时候一定要注意不要写出死循环

相关推荐
香吧香4 分钟前
java服务异常日志只打印异常类型,没有堆栈定位分析
java·jvm·异常
qq_25183645739 分钟前
AI 疾病自查功能SpringbootAI项目实战 · 技术实现文档
java·ai·ai编程
逆境不可逃1 小时前
Pi Agent 学习笔记:对话太长以后,如何压缩上下文
java
MetaLite1 小时前
JDK 8~26 核心特性一览:从 Stream 到 Scoped Values
java
wno7042 小时前
Spring Boot WebFlux增删改查
java·spring boot·后端
拼图2092 小时前
Git常用语法
分布式·git·学习
君顾12 小时前
上海24小时自助健身房系统开发实战指南:从架构设计到落地部署
java·开发语言·健身房
Vcaker3 小时前
Linux学习29-kubernetes网络
学习
SL_staff3 小时前
别急着买商业规则引擎:90%风控场景根本不需要全量编码能力
java·程序员·groovy
ManageEngineITSM3 小时前
DevOps和ITIL是什么关系?是替代还是互补一文讲清
java·服务器·资产管理·变更管理