[Day07] CH05:如果我有一座新冰箱——if/else 条件判断

昨天的练习题有做出来吗?是不是有遇到什麽问题呢?

第一个问题应该是两数相除完呈现整数,这时候我们需要「强制转型」。因为整数与整数相除完得到的答案还会是整数,这时候为了让他变成小数我们需要在前面加一个 float,将他强制转型为浮点数。

float quotient = (float) num1 / num2;

第二个问题应该是要怎麽印出两位小数,在印出浮点数的时候,是使用「%f」,而要印出两位小数,则是加上小数点和小数点後几位,如下图所示:

System.out.printf("Quotient: %.2f%n", quotient);

全部的程序码如下,有没有成功做出来呢?记得写程序最重要的就是自己动手做哦!

import java.util.Scanner;

public class Division {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter first number: ");
        int num1 = sc.nextInt();
        System.out.print("Enter second number: ");
        int num2 = sc.nextInt();
        float quotient = (float) num1 / num2;
        System.out.printf("Quotient: %.2f%n", quotient);
        sc.close();
    }
}

不知道你有没有想到一个问题,就是如果除数为 0 怎麽办呢?这时候我们就需要「if/else」来判断,语法如下:

if(条件式1){
    System.out.println(“条件式1成立”);
}

如果条件式 1 成立,就会执行括号内程序。这时候如果不成立,我们还可以多加一个 else:

if(条件式1){
    System.out.println(“条件式1成立”);
}
else{
    System.out.println(“条件式1不成立”);
}

如果条件式 1 不成立,就不会执行 if 括号内的程序,而是会执行 else 括号内的程序。如果我们不只一个条件呢?那麽我们还可以加入 else if():

if(条件式1){
    System.out.println(“条件式1成立”);
}
else if(条件式2){
    System.out.println(“条件式2成立”);
}
else{
    System.out.println(“条件式1、条件式2不成立”);
}

如果条件式 1 不成立,就不会执行 if 括号内的程序,而是会继续判断条件式 2 是否成立,若成立就会印出「条件式 2 成立」,否则会执行 else 括号内的程序。BTW,else if 可以不只一个,if 里面也可以有 if。

回到昨天的程序,若除数为 0 时,则两数不相除,而是印出「除数不得为 0」,更改後的程序码如下:

import java.util.Scanner;

public class Division2 {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter first number: ");
        int num1 = sc.nextInt();
        System.out.print("Enter second number: ");
        int num2 = sc.nextInt();
        if(num2 == 0){
            System.out.println("除数不得为 0");
        }
        else{
            float quotient = (float) num1 / num2;
            System.out.printf("Quotient: %.2f%n", quotient);
        }
        sc.close();
    }
}

完成了这个程序是不是想学更多呢?那我们一起期待明天会学到什麽更有趣的内容吧!


<<:  [Day7] 隐式调用与显式调用是甚麽?

>>:  Day07 - 套用 Html Helper - 复杂型别 object

电子书阅读器上的浏览器 [Day08] 调整网页字型

字型大小 这次的重点是字型。先来说说字型大小。 现在市面上的电子纸设备大大小小各种尺寸都有:从海信...

新新新手阅读 Angular 文件 - ngFor(2) - Day20

本文内容 将 ngIf 和 ngFor 彼此之间怎麽搭配使用的方法记录下来。 structural ...

Day3 阿里云使用须知与中国网路

前言:   随着网路时代普及生活化,各国政府对IT资讯产业也推行了相当多的管理法案以维护网际网路使用...

为了转生而点技能~day1:javascript 起手篇(RHS、LHS、语法作用域

本系列是为了转生,为了点技能而解任务的攻略提示,皆无营利、亦非营利取向。 Javascript:属於...

PHP 资料库取值字串型态问题与解决纪录

问题描述 资料库栏位型态里面设定的型态是varchar 但在php里面取值时(如下面程序码),有可能...