簡體   English   中英

效率 - 在Java中處理單個和多個實例

[英]Efficiency - Handling singular and plural instances in Java

這是我的作業問題:

編寫一個程序,在幾分鍾內詢問電影名稱和電影的長度,然后程序打印電影的名稱及其長度,以小時和分鍾為單位,例如用戶輸入Finding Nemo104然后程序將輸出Finding Nemo運行1小時44分鍾

我已經盡力完成了這個問題,如下所示,但我想知道是否有更有效的方法來布置代碼或編程這個工作。 它工作順便說一句,只是想知道是否有更好的方法來編寫代碼?

import java.util.Scanner;

public class Film 
{
    public static void main(String[] args)
    {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter Movie Name: ");
        String movie = input.nextLine();
        System.out.println("Enter Movie Length (minutes): ");
        int totalmins = input.nextInt();
        int hours = totalmins/60;
        int minutes = totalmins%60;
        if(hours==1) {System.out.print(movie + " runs for " + hours + " hour and ");}
        else {System.out.print(movie + " runs for " + hours + " hours and ");}
        if(minutes==1) {System.out.println(minutes + " minute ");}
        else {System.out.println(minutes + " minutes ");}       
    }
}

我認為你的代碼很簡單,很容易得到你想要的東西。 你的作業已經完成。 :)但是如果你想要更多關於日期和時間的細節,你可以嘗試使用java.util.Date和GregorianCalendar類。

是的,但我想我會做那樣的事情:

String hunit = hours == 1 ? " hour" : " hours";
String munit = minutes == 1 ? " minute" : " minutes";
System.out.println(movie + " runs for " + hours + hunit + " and " + minutes + munit);

實際上它非常好。 我能想到的一個小改進就是編寫一個復數(整數)例程,對於1以外的任何數字,返回1“和”s“。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM