汉扬编程 C语言入门 Java语言的Calendar和Date类区别是什么?

Java语言的Calendar和Date类区别是什么?

  Java 语言的Calendar(日历),Date(日期),和DateFormat(日期格式)组成了Java标准的一个基本但是非常重要的部分。日期是商业逻辑计算一个关键的部分。所有的开发者都应该能够计算未来的日期,定制日期的显示格式,并将文本数据解析成日期对象。
  

创建一个日期对象

让我们看一个使用系统的当前日期和时间创建一个日期对象并返回一个长整数。这个时间通常被称为Java 虚拟机(JVM)主机环境的系统时间。

import java。util。Date;

public class DateExample1 {

public static void main(String[] args) {

// Get the system date/time

Date date = new Date();

System。
  out。println(date。getTime());

} }

在星期六,2001年9月29日,下午大约是6:50的样子,上面的例子在系统输出设备上显示的结果是 1001803809710。值得注意的是我们使用了Date 构造函数创建一个日期对象,这个构造函数没有接受任何参数,而这个构造函数在内部使用了System。
  currentTimeMillis() 方法来从系统获取日期。现在我们已经知道了如何获取从1970年1月1日开始经历的毫秒数了。我们如何才能以一种用户明白的格式来显示这个日期呢? 在这里类java。text。SimpleDateFormat 和它的抽象基类 java。
  text。DateFormat 就派得上用场了。

日期数据的定制格式

假如我们希望定制日期数据的格式,比方星期六-9月-29日-2001年。 下面的例子展示了如何完成这个工作:

import java。text。SimpleDateFormat;

import java。
  util。Date;

public class DateExample2 {

public static void main(String[] args) {

SimpleDateFormat bartDateFormat = new SimpleDateFormat(\”EEEE-MMMM-dd-yyyy\”);

Date date = new Date();

System。
  out。println(bartDateFormat。format(date));

} }。

C语言入门(刚学C语言,第一讲教程就遇问题)

我不知道你用的是什么编译器,我用的是VC++6.0

用你上面的代码运行一下,结果是

year=0,month=11,date=22

当然我的键盘输入是:

yy-mm-dd=00-11-22

这是因为你的scanf语句是scanf(\”yy-mm-dd=%d-%d-%d\”,&year,&month,&date);在键盘输入要将引号里的东西全部输入进去,而且要一模一样,一个空格也不能多,一个空格也不能少.(当然占位符就是你想要输入的东西,这个想必你也明白.)

顺便一提,如果你想只是输入00-11-22 就能出来正确的结果的话,就把\”yy-mm-dd=\”用printf写出来,或者干脆就去掉算了.

还有整形输入是没办法将单位数变成0X的形式的,除非用字符(串)的形式输入输出.

其实也不难实现,有兴趣的话,自己试试写一下吧.

你的问题出在scanf函数与用键盘输入时不配对。scanf函数的%d与%d之间只能用空格或者逗号隔开,相应的你输入时,①%d与%d之间是空格,用空格或Tab键。②%d与%d之间是逗号,只能用逗号。

这是我用Turbo C2.0写的程序。

main()

{int year,month,date;

clrscr(); /*清屏函数*/

printf(\”please input year&month&date:\\n\”);

scanf(\”%d%d%d,&year,&month,&date);

printf(\”year=%d,month=%d,date=%d);

}

用键盘输入00 11 22,结果为

year=0,month=11,date=22

本文来自网络,不代表汉扬编程立场,转载请注明出处:http://www.hyzlch.com/cjia/6161.html

我们一起学RISC-V——10-C和汇编语言混合编程

c语言中 x的平方 可以写为 x^2 吗?

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部