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

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

Java中版本的比較

Java中版本的比較

江戶川亂折騰 2022-08-17 16:04:04
我有一個(gè)比較Eclipse版本的函數(shù)。我們對(duì)當(dāng)前的 Eclipse IDE 進(jìn)行子字符串處理(例如,如果當(dāng)前版本是 4.7.10,則該函數(shù)將返回 4.7)我的問(wèn)題是現(xiàn)在的當(dāng)前版本是4.10。Java在比較BigDecimal時(shí)所做的是刪除尾隨零。如何使 4.10 大于 4.5?謝謝!
查看完整描述

1 回答

?
動(dòng)漫人物

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

這里有一些東西可以讓你去 - 非常簡(jiǎn)單:


public class Main {

    public static void main(String[] args)

    {


        String version1 = "4.10";

        String version2 = "4.5";


        compareVersions(version1, version2);

    }


    private static void compareVersions(String v1, String v2) {

        String[] versionSplit1 = v1.split("\\.");

        String[] versionSplit2 = v2.split("\\.");

        if (versionSplit1[0].equals(versionSplit2[0])) {

            if (Integer.parseInt(versionSplit1[1]) > (Integer.parseInt(versionSplit2[1]))) {

                System.out.println(v1 + " is bigger than " + v2);

            } else if (Integer.parseInt(versionSplit1[1]) == (Integer.parseInt(versionSplit2[1]))){

                System.out.println(v1 + " is equal to " + v2);

            } else {

                System.out.println(v2 +  " is bigger than " + v1);

            }

        } else if (Integer.parseInt(versionSplit1[0]) > Integer.parseInt(versionSplit2[0])) {

            System.out.println(v1 + " is bigger than " + v2);

        } else {

            System.out.println(v2 + " is bigger than " + v1);

        }

    }

}

如果我正確理解您的問(wèn)題,這是一個(gè)非??焖俚拇致越鉀Q方案 - 我想您需要擴(kuò)展它以滿足您的需求,但這個(gè)想法仍然存在。

  1. 如果版本仍不是,請(qǐng)將版本轉(zhuǎn)換為字符串。

  2. 按點(diǎn)拆分,您最終會(huì)得到兩個(gè)部分 - 例如第一部分(4)和第二部分(10)。

  3. 比較第一部分(因?yàn)樗亲址?,因此需要將其解析為整?shù))。如果第一部分相同,請(qǐng)比較第二部分(您還需要解析它)。

如果您使用的是 BigDecimal,并且想要轉(zhuǎn)換為 String 并保留尾隨零,請(qǐng)嘗試以下操作:

double value = 4.10;

//convert double to BigDecimal

BigDecimal bigDecimalValue = BigDecimal.valueOf(value);

BigDecimal tempValue = bigDecimalValue.setScale(2, RoundingMode.CEILING);

//convert to String

System.out.println(tempValue.toPlainString()); //5.40

然后按照上面的字符串所述繼續(xù)操作。


查看完整回答
反對(duì) 回復(fù) 2022-08-17
  • 1 回答
  • 0 關(guān)注
  • 87 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(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)