第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Java變量只接受特定范圍的值

Java變量只接受特定范圍的值

POPMUISE 2023-07-19 16:49:09
我對(duì)此很陌生,所以請(qǐng)耐心等待。我有作業(yè),我不太明白老師這句話到底是什么意思。班級(jí)名稱是電梯level 存儲(chǔ)當(dāng)前級(jí)別。level 是 int 類型的實(shí)例變量將級(jí)別數(shù)限制在 -2 到 10 之間。然后創(chuàng)建一個(gè)名為 goTo(Level: int) 的方法。(將發(fā)送消息)通過限制到特定范圍,我猜他的意思是使用 if 語(yǔ)句?如果我是對(duì)的,我會(huì)將其添加到下面的方法中,因?yàn)槲覠o法直接在類中創(chuàng)建 if 語(yǔ)句。還有為什么方法 where(): int 應(yīng)該返回 level。它從來沒有被使用過...public class Elevator {    int level = 0;    public void goTo(int level){        if (level < this.level){            System.out.println("Elevator going up to floor " + level);        }        else if (level > this.level){            System.out.println("Elevator going  down to floor " + level);        }        else if (level == this.level){            System.out.println("Elevator already on the floor " + level);        }    }    public int where(){        return level;    }}
查看完整描述

3 回答

?
慕碼人8056858

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超6個(gè)贊

從我的角度來看, limit 應(yīng)該是 goTo 方法中的 if 語(yǔ)句,以防止發(fā)送級(jí)別不同于 -2 到 10 的級(jí)別。所以它應(yīng)該看起來像這樣:


public class Elevator {


    int actualLevel = 0;


    public void goTo(int level) {

        if (level < -2 || level > 10) {

            System.out.println("Invalid level!. Levels range is -2 to 10.");

            return;

        }


        if (level > actualLevel) {

            System.out.println("Elevator going up to floor " + level);

            this.actualLevel = level;

        } else if (level < actualLevel) {

            System.out.println("Elevator going  down to floor " + level);

            this.actualLevel = level;

        } else if (level == actualLevel) {

            System.out.println("Elevator already on the floor " + level);

        }

    }


    public int where() {

        return this.actualLevel;

    }


}

另外,我對(duì)您的類變量名稱進(jìn)行了更改,因?yàn)樵跈z查電梯是否上升或下降時(shí)出現(xiàn)了錯(cuò)誤,因?yàn)槟e(cuò)了方法和類變量。另一件事是,如果電梯上升或下降,您應(yīng)該將其分配給您的類變量以保存實(shí)際樓層。


查看完整回答
反對(duì) 回復(fù) 2023-07-19
?
慕哥9229398

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超6個(gè)贊

一點(diǎn)補(bǔ)充:


將級(jí)別數(shù)限制在 -2 到 10 之間。


這里真正的問題不是您需要一系列 if/else 語(yǔ)句。它實(shí)際上是(被遺漏的)細(xì)節(jié):如何對(duì)錯(cuò)誤輸入做出反應(yīng)。在您的情況下,您可能會(huì)同意:當(dāng)提供錯(cuò)誤的數(shù)字時(shí),該方法什么也不goTo()做。


然而,在更復(fù)雜的情況下,以某種方式告訴該方法的調(diào)用者可能更合適:您給我的輸入無效。例如通過拋出某種排序異常。


回到這個(gè)簡(jiǎn)單的情況,您的代碼中缺少的是:當(dāng)用戶選擇有效的新級(jí)別時(shí),您希望發(fā)生該分配:


if(newLevel < - 2 || newLevel > 10 ) {

... // checks for valid input

if (newLevel < newLevel) {

... // the required print statements


// finally, make the elevator actually go to the new level

level = newLevel;

(是的:更喜歡以與類字段不同的方式命名該參數(shù)。參數(shù)實(shí)際上是:要移動(dòng)到的預(yù)期新級(jí)別。不同的名稱有助于避免錯(cuò)誤)


查看完整回答
反對(duì) 回復(fù) 2023-07-19
?
守著星空守著你

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超8個(gè)贊

level首先,本地層和電梯層之間存在一些小小的混淆。


現(xiàn)在最小和最大級(jí)別是電梯的屬性。您也可以將它們存儲(chǔ)為(常量)字段。下面我直接在代碼中使用它們。這并不容易理解,房子只有這些樓層。


public class Elevator {


    int cabinLevel = 0;


    public void goTo(int level) {

        if (level < -2) {

            return;

        }

        if (level Y > 12) {

            return;

        }


        if (level < this.cabinLevel){

            System.out.println("Elevator going D O W N to floor " + level);

            cabinLevel = level;

        } else if (...) {


查看完整回答
反對(duì) 回復(fù) 2023-07-19
  • 3 回答
  • 0 關(guān)注
  • 200 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)