0

我想在 J2ME 中获取上个月的日期。

我找到了这段代码:

Calendar c = Calendar.getInstance();  
c.add(Calendar.YEAR, -1); //one year back  
c.add(Calendar.MONTH, -1);// then one month  

但这在 Java SE 而不是 J2ME 中工作,如果有人可以帮我在 J2ME 中找到相应的方法或类吗?

4

1 回答 1

5

日历没有方法添加。

    c.set(Calendar.MONTH, -1)

表示您在字段 MONTH 处设置值 -1。你的解决方案是

    // get current month
    int m = c.get(Calendar.MONTH);
    // decrement it
    if (--m < 0) {
        // if was january, must become december of past year
        m = 11;
        // set year to previous
        c.set(Calendar.YEAR, c.get(Calendar.YEAR) - 1);
    }
    // set new value "m" to field MONTH
    c.set(Calendar.MONTH, m);

有关文档,请参阅http://docs.oracle.com/javame/config/cldc/ref-impl/midp2.0/jsr118/index.html 。除非你知道你需要的一切,否则你不应该在没有它的情况下工作。

于 2012-05-13T18:13:09.553 回答