JAVA时间 yyyy-MM-dd'T'HH:mm:ss.SSSZ 中的T是什么意思

JAVA时间 yyyy-MM-dd'T'HH:mm:ss.SSSZ 中的T是什么意思,第1张

T的含义是表示时间的开始;

Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。

Java还剔除了C++的 *** 作符过载(overload)和多继承特征,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。

面向对象

Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和 *** 纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和 *** 作数据的方法的集合。

数据和方法一起描述对象(object)的状态和行为。每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。

Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(javaawt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(javaio包)和支持网络功能的类(javanet包)。

- (int)intervalSinceNow: (NSString ) theDate

{

NSDateFormatter date=[[NSDateFormatter alloc] init];

[date setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSDate d=[date dateFromString:theDate];

NSTimeInterval late=[d timeIntervalSince1970]1;

NSDate dat = [NSDate dateWithTimeIntervalSinceNow:0];

NSTimeInterval now=[dat timeIntervalSince1970]1;

NSString timeString=@"";

NSTimeInterval cha=now-late;

if (cha/86400>1)

{

timeString = [NSString stringWithFormat:@"%f", cha/86400];

timeString = [timeString substringToIndex:timeStringlength-7];

return [timeString intValue];

}

return -1;

}

上面的例子只是计算相差了几天

当然可以计算其他数值

cha/3600<1 分钟

if (cha/3600>1&&cha/86400<1) 小时

01

// 获取当前日期

02

NSDate date = [NSDate date];

03

04

// 打印结果: 当前时间 date = 2013-08-16 09:00:04 +0000

05

NSLog(@"当前时间 date = %@",date);

06

07

// 获取从某个日期开始往前或者往后多久的日期,此处60代表60秒,如果需要获取之前的,将60改为-60即可

08

date = [[NSDate alloc] initWithTimeInterval:60 sinceDate:[NSDate date]];

09

10

//打印结果:当前时间 往后60s的时间date = 2013-08-16 09:01:04 +0000

11

NSLog(@"当前时间 往后60s的时间date = %@",date);

PS:测试时时间是下午5点,但是得到的当前时间却是上午9点,相差了8小时,是时区的问题

解决办法:

1

NSTimeZone zone = [NSTimeZone systemTimeZone];

2

3

NSInteger interval = [zone secondsFromGMTForDate: date];

4

5

NSDate localDate = [date dateByAddingTimeInterval: interval];

6

7

// 打印结果 正确当前时间 localDate = 2013-08-16 17:01:04 +0000

8

NSLog(@"正确当前时间 localDate = %@",localDate);

import javatextSimpleDateFormat;

import javautilDate;

import javautilCalendar;

public class WorkDay {

public static void main(String[] args) {

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd E");

for (Date date : getWeekDay()) {

Systemoutprintln(dateFormatformat(date));

}

}

public static Date[] getWeekDay() {

Calendar calendar = CalendargetInstance();

while (calendarget(CalendarDAY_OF_WEEK) != CalendarMONDAY) {

calendaradd(CalendarDAY_OF_WEEK, -1);

}

Date[] dates = new Date[5];

for (int i = 0; i &lt; 5; i++) {

dates[i] = calendargetTime();

calendaradd(CalendarDATE, 1);

}

return dates;

}

}

如果每周指的是从星期一开始,那么这个程序可以达到你的要求。

如果每周指得是从星期日开始,那么请说明,我再修改。

因为 LocalDate 被设计为不可变对象,这样的话每个修改当前 LocalDate 对象的方法(比如 plusDays),都会返回一个新的 LocalDate 对象,而原有的 LocalDate 对象不会发生改变。

以上就是关于JAVA时间 yyyy-MM-dd'T'HH:mm:ss.SSSZ 中的T是什么意思全部的内容,包括:JAVA时间 yyyy-MM-dd'T'HH:mm:ss.SSSZ 中的T是什么意思、怎么设定一个时间并转换成当前时间的timeInterval、java 获得本周一到周五的日期等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9332518.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存