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

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

將不同類型的可比較數(shù)量與零進(jìn)行比較

將不同類型的可比較數(shù)量與零進(jìn)行比較

精慕HU 2023-05-10 17:02:08
我有這樣的代碼:    BigDecimal n1= BigDecimal.TEN;    Long n2= 15L;    nullOrNonPositive(n1);    nullOrNonPositive(n2);和方法代碼:    private boolean nullOrNonPositive(Comparable value) {        return isNull(value) || value.compareTo(BigDecimal.ZERO) <= 0;    }我確實(shí)得到了 an Exceptionthat Longcannot compared to BigDecimal,這很明顯。有沒有辦法使方法 generic 和 compare Comparable,它總是一個(gè)數(shù)字(但不同的類)為零?
查看完整描述

3 回答

?
元芳怎么了

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

我會(huì)采用一個(gè)參數(shù)來表示zeroComparator 所表示的類型的值,并讓調(diào)用者傳遞它。


private static <T> boolean nullOrNonPositive(Comparable<T> value, T zero) {

    return isNull(value) || value.compareTo(zero) <= 0;

}

稱之為


nullOrNonPositive(n1, BigDecimal.ZERO); //false

nullOrNonPositive(n2, 0L); //false


nullOrNonPositive(-1L, 0L); //true

nullOrNonPositive(2, 0)); //true


nullOrNonPositive("1", "0"); //false

nullOrNonPositive("0", "0"); //true

如果可能的類型集 ( T) 有限,您可以將零值存儲(chǔ)在映射中。


查看完整回答
反對 回復(fù) 2023-05-10
?
心有法竹

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

如果您不想傳遞零值,則可以添加調(diào)用 main 函數(shù)的方法。這使調(diào)用者不必知道zero每種類型的值是什么。

private static <T> boolean nullOrNonPositive(Comparable<T> value, T zero) {

? return isNull(value) || value.compareTo(zero) <= 0;? ??

}


private boolean nullOrNonPositive(BigDecimal value) {

? return nullOrNonPositive(value, BigDecimal.ZERO)

}


private boolean nullOrNonPositive(Long value) {

? return nullOrNonPositive(value, 0L);

}


查看完整回答
反對 回復(fù) 2023-05-10
?
皈依舞

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

或者,如果您不想為每個(gè)數(shù)字定義 0,并且您總是使用nullOrNonPositive數(shù)字,您可以這樣做:

private boolean nullOrNonPositive(Number value) {
    return isNull(value) || new BigDecimal(value.toString()).signum() <= 0;
}


查看完整回答
反對 回復(fù) 2023-05-10
  • 3 回答
  • 0 關(guān)注
  • 155 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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