在J2ME中获取上一个日期

Ami*_*ail 0 java-me

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

我找到了这段代码:

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

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

Yar*_*lyk 5

日历没有方法添加.

    c.set(Calendar.MONTH, -1)
Run Code Online (Sandbox Code Playgroud)

表示您在字段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);
Run Code Online (Sandbox Code Playgroud)

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