當前位置: 首頁>>代碼示例>>Java>>正文


Java RoundingMode.CEILING屬性代碼示例

本文整理匯總了Java中java.math.RoundingMode.CEILING屬性的典型用法代碼示例。如果您正苦於以下問題:Java RoundingMode.CEILING屬性的具體用法?Java RoundingMode.CEILING怎麽用?Java RoundingMode.CEILING使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在java.math.RoundingMode的用法示例。


在下文中一共展示了RoundingMode.CEILING屬性的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getBandValue

private BigDecimal getBandValue(SRVMBand band, int quantity) {
    // The min{2,n} or min{4,n} part of the value function
    int firstSummand = quantity > synergyThreshold.get(band.getName()) ? synergyThreshold.get(band.getName()) : quantity;
    // The min{3/4, (n-1)/n} * syn_i(B)} or equivalent for other bands part
    BigDecimal minFraction = new BigDecimal(firstSummand - 1).divide(new BigDecimal(firstSummand), CALCSCALE, RoundingMode.CEILING);
    BigDecimal synergyFactor = intrabandSynergyFactors.get(band.getName());
    BigDecimal secondSummand = minFraction.multiply(synergyFactor);
    // The marginal decreasing third summand (max{0, ln{n-1)})
    int toLog = quantity - (synergyThreshold.get(band.getName()) - 1);
    BigDecimal thirdSummand;
    if (toLog <= 0) {
        thirdSummand = BigDecimal.ZERO;
    } else {
        double lnApproximation = Math.log(toLog);
        BigDecimal ln = new BigDecimal(lnApproximation, new MathContext(CALCSCALE, RoundingMode.CEILING));
        if (ln.compareTo(BigDecimal.ZERO) >= 0) {
            thirdSummand = ln;
        } else {
            thirdSummand = BigDecimal.ZERO;
        }
    }

    // Calculates product
    BigDecimal firstFactor = new BigDecimal(firstSummand).add(secondSummand).add(thirdSummand);
    BigDecimal baseValue = baseValues.get(band.getName());
    // No need to take random influence and relative bidder strength into account. Is already included in baseValue;
    return firstFactor.multiply(baseValue);
}
 
開發者ID:spectrumauctions,項目名稱:sats-core,代碼行數:28,代碼來源:SRVMBidder.java

示例2: testEntryOfEnum

@Test
public void testEntryOfEnum() {
	String originalValue = "CEILING";
	RoundingMode expected = RoundingMode.CEILING;
	
	IData idata = newIDataWithValue(originalValue);

	Document document = docFactory.wrap(idata);
	assertEquals(expected, document.entry("value1", RoundingMode.class).getVal());
	
}
 
開發者ID:innodev-au,項目名稱:wmboost-data,代碼行數:11,代碼來源:DocumentTest.java

示例3: main

public static void main(String [] argv) {

        // For each member of the family, make sure
        // rm == valueOf(rm.toString())

        for(RoundingMode rm: RoundingMode.values()) {
            if (rm != RoundingMode.valueOf(rm.toString())) {
                throw new RuntimeException("Bad roundtrip conversion of " +
                                           rm.toString());
            }
        }

        // Test that mapping of old integers to new values is correct
        if (RoundingMode.valueOf(BigDecimal.ROUND_CEILING) !=
                RoundingMode.CEILING) {
                throw new RuntimeException("Bad mapping for ROUND_CEILING");
        }

        if (RoundingMode.valueOf(BigDecimal.ROUND_DOWN) !=
                RoundingMode.DOWN) {
                throw new RuntimeException("Bad mapping for ROUND_DOWN");
        }

        if (RoundingMode.valueOf(BigDecimal.ROUND_FLOOR) !=
                RoundingMode.FLOOR) {
                throw new RuntimeException("Bad mapping for ROUND_FLOOR");
        }

        if (RoundingMode.valueOf(BigDecimal.ROUND_HALF_DOWN) !=
                RoundingMode.HALF_DOWN) {
                throw new RuntimeException("Bad mapping for ROUND_HALF_DOWN");
        }

        if (RoundingMode.valueOf(BigDecimal.ROUND_HALF_EVEN) !=
                RoundingMode.HALF_EVEN) {
                throw new RuntimeException("Bad mapping for ROUND_HALF_EVEN");
        }

        if (RoundingMode.valueOf(BigDecimal.ROUND_HALF_UP) !=
                RoundingMode.HALF_UP) {
                throw new RuntimeException("Bad mapping for ROUND_HALF_UP");
        }

        if (RoundingMode.valueOf(BigDecimal.ROUND_UNNECESSARY) !=
                RoundingMode.UNNECESSARY) {
                throw new RuntimeException("Bad mapping for ROUND_UNNECESARY");
        }
    }
 
開發者ID:lambdalab-mirror,項目名稱:jdk8u-jdk,代碼行數:48,代碼來源:RoundingModeTests.java


注:本文中的java.math.RoundingMode.CEILING屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。