java 怎样让一个日期累加,2010-12-16 累加到2010-12-30

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 怎样让一个日期累加,2010-12-16 累加到2010-12-30相关的知识,希望对你有一定的参考价值。

参考技术A 用Calendar.set(Calendar.DATE, 1)就可以累加到12-30
import java.util.Calendar;
import java.util.Date;

public class CalendarAdd

public static void main(String[] args)

Calendar calendar = Calendar.getInstance();

calendar.set(Calendar.YEAR, 2012);
calendar.set(Calendar.MONTH, 12-1);//月份是从0开始的,所以要-1
calendar.set(Calendar.DATE, 16);

for(int i = 16; i <= 30; i++)
calendar.set(Calendar.DATE, i);
Date date = calendar.getTime();
System.out.println(date.toString());




-------------
Sun Dec 16 13:29:26 CST 2012
Mon Dec 17 13:29:26 CST 2012
Tue Dec 18 13:29:26 CST 2012
Wed Dec 19 13:29:26 CST 2012
Thu Dec 20 13:29:26 CST 2012
Fri Dec 21 13:29:26 CST 2012
Sat Dec 22 13:29:26 CST 2012
Sun Dec 23 13:29:26 CST 2012
Mon Dec 24 13:29:26 CST 2012
Tue Dec 25 13:29:26 CST 2012
Wed Dec 26 13:29:26 CST 2012
Thu Dec 27 13:29:26 CST 2012
Fri Dec 28 13:29:26 CST 2012
Sat Dec 29 13:29:26 CST 2012
Sun Dec 30 13:29:26 CST 2012本回答被提问者采纳
参考技术B 用Calendar类
public abstract void add(int field, int amount)根据日历的规则,为给定的日历字段添加或减去指定的时间量。例如,要从当前日历时间减去 5 天,可以通过调用以下方法做到这一点:
add(Calendar.DAY_OF_MONTH, -5)。
参数:
field - 日历字段。
amount - 为字段添加的日期或时间量。

Java中怎么把字符串转换成日期格式啊

就像"2005-06-09"怎么才能让它输出2005年6月9日呢,我用SimpleDateFormat 中的format了但不是太会用,那位大虾能给我一个这方面易懂点的代码,万分感谢。。。
就像"2005-06-09"怎么才能让它输出2005年6月9日呢,我用SimpleDateFormat 中的format了但不是太会用,那位大虾能给我一个这方面易懂点的代码。
我要的是转换任意的字符串,而不是当前时间,一楼的那个我知道,但就是不知道怎样把任意的字符串转换成时间格式的!

希望将日期输出成2005年6月9日,我们可以这么写:

SimpleDateFormat sdf =   new SimpleDateFormat( " yyyy年MM月dd日 " );

String str = sdf.format(parse( " 2005-06-09 00:00:00 " );

str便会依照我们设定的格式输出了。

用的API是SimpleDateFormat,它是属于java.text.SimpleDateFormat,所以请记得import进来!用法:SimpleDateFormat sdf =   new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " );这一行最重要,它确立了转换的格式,yyyy是完整的公元年,MM是月份,dd是日期。

扩展资料:

SimpleDateFormat的支持格式如下:

yy/MM/dd HH:mm:ss 如 '2017/12/12 17:55:00'

yy/MM/dd HH:mm:ss pm 如 '2017/12/12 17:55:00 pm'

yy-MM-dd HH:mm:ss 如 '2017-12-12 17:55:00' 

yy-MM-dd HH:mm:ss am 如 '2017-12-12 17:55:00 am' 


参考技术A

方法一:

public static void main(String[] args) throws Exception

Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2005-06-09"); 

String now = new SimpleDateFormat("yyyy年MM月dd日").format(date);

System.out.println(now);

输出结果:2005年06月09日

方法二:

public class bb

public static void main(String[] args)

// TODO Auto-generated method stub

SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhhmmss");

String dateString = "20071128175545";

try

Date date = df.parse(dateString);

System.out.println(df.format(date));

catch (Exception ex)

System.out.println(ex.getMessage());

扩展资料:

Java指定了一些可访问的修饰符如:private、protected、public,任何方法或变量都可以声明为public,Java可以从该类之外的地方访问。因为main方法是公共的,JVM就可以轻松的访问执行它。

在main里面args[]就是两个长度的数组:value1存在args[0]中,value2存在args[1]中。

args[0]存储的是命令,其后才是参数。

String args[ ]或者String[ ] args表示给主方法传一个字符串数组。

而args是一个字符串数组的变量名,不是关键字,是arguments的缩写,只是一个默认名,一般都习惯性照写。

例如:

class Example

public static void main(String args[ ])

System.out.println("This is a simple Java program.");

参考资料来源:百度百科—args[ ]

参考技术B

需要输出:2005年06月09日,那么需要注意的有两点:

第一,把你给定的日期格式的字符串转换为日期类型的值,要利用 new SimpleDateFormat("yyyy-MM-dd"); 注意这里的字符串值就可以任意给定了,但是转换时要注意日期格式的对应!!!

第二,再利用第一步得到的日期类型的值转换为你需要的值,需新建一个 new SimpleDateFormat("yyyy年MM月dd日");

详细代码如图:

参考技术C 先用parse转成date型,再用format转成string。

public static void main(String[] args) throws Exception
Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2005-06-09");
String now = new SimpleDateFormat("yyyy年MM月dd日").format(date);
System.out.println(now);
本回答被提问者和网友采纳
参考技术D import java.sql.Date;
Date date = Date.valueOf(str);
//str为目标字符串,如2006-10-05,或20061005,有些格式离谱的如:201315当然不能转化为日期了

然后按照一楼的操作,还有其他方法,多看看帮助文档

以上是关于java 怎样让一个日期累加,2010-12-16 累加到2010-12-30的主要内容,如果未能解决你的问题,请参考以下文章

EXCEL表格自动填充日期,怎样让每十行填充同一个日期?

C++实现日期累加

C++实现日期累加

sql 中怎样让日期转变成字符串

日期处理_升级版

Java中怎么把字符串转换成日期格式啊