我想求出 系统七天前的时间,怎么总是出错,
package com.pa;
public class DateTest
{
private String year;
private String month;
private String day;
private int yy,mm,dd;
//初始化是取得系统时间
public DateTest()
{
java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date currentTime = new java.util.Date();
String date = formatter.format(currentTime);
year = date.substring(0,4);
month = date.substring(5,7);
day = date.substring(8,10);
yy = Integer.parseInt(year);
mm = Integer.parseInt(month);
dd = Integer.parseInt(day);
}
//得到昨天的时间
public int getLastMonthDay(int MM)
{
int new_mm = MM-1;
int new_dd;
if(yy%4==0)//判断闰年,平年,得到二月的实际天数
{
new_dd=29;
}
else if(new_mm==1||new_mm==3||new_mm==5||new_mm==7||new_mm==8||new_mm==10||new_mm==12)//判断月份,得到除二月外的具体天数
{
new_dd=31;
}
else if(mm==4||mm==6||mm==9||mm==11)
{
new_dd=30;
}
else
{
new_dd=28;
}
return new_dd;
}
public String getYesterdayTime()
{
String yesterday;
int dd = Integer.parseInt(day);
if(dd==1)
{
if(mm==1)
{
yesterday = String.valueOf(yy-1)+"-12-31";
}
else
{
yesterday = year+"-"+String.valueOf(mm-1)+"-"+String.valueOf(getLastMonthDay(mm));
}
}
else
{
yesterday = year+"-"+month+"-"+String.valueOf(dd-1);
}
return yesterday;
}
//得到上个礼拜的时间
public String getLastWeekTime()
{
String lastWeekTime;
if(dd<7)
{
if(mm==1)
{
lastWeekTime = String.valueOf(yy-1)+"-12"+"-"+String.valueOf(31+dd-7);
}
else
{
int m = mm-1;
int d = getLastMonthDay(mm)+dd-7;
lastWeekTime = year+"-"+String.valueOf(m)+"-"+String.valueOf(d);
}
}
if(dd==7)
{
if(mm==1)
{
lastWeekTime = String.valueOf(yy-1)+"-12-31";
}
else
{
lastWeekTime = year+"-"+String.valueOf(mm-1)+"-"+String.valueOf(getLastMonthDay(mm));
}
}
else
{
lastWeekTime = year+"-"+month+"-"+String.valueOf(dd-7);
}
return lastWeekTime;
}
//得到上个月的时间
public String getLastMonth()
{
String lastMonthDay;
if(mm==1)
{
lastMonthDay = String.valueOf(yy-1)+"-12-31";
}
else
{
lastMonthDay = year+"-"+String.valueOf(mm-1)+"-"+day;
}
return lastMonthDay;
}
//得到上个季度时间
public String getLastQuarterTime()
{
String lastQuarterTime;
String startMonthTime = null;
String endMonthTime = null;
if(mm>=1&&mm<=3)
{
startMonthTime = String.valueOf(yy-1)+"-10-31";
endMonthTime = String.valueOf(yy-1)+"-12-31";
}
if(mm>=4&&mm<=6)
{
startMonthTime = year+"-01-31";
endMonthTime = year+"-03-31";
}
if(mm>=7&&mm<=9)
{
startMonthTime = year+"-04-30";
endMonthTime = year+"-06-30";
}
if(mm>=10&&mm<=12)
{
startMonthTime = year+"-07-31";
endMonthTime = year+"-09-30";
}
lastQuarterTime = startMonthTime+"*"+endMonthTime;
return lastQuarterTime;
}
public static void main(String args[])
{
DateTest dt = new DateTest();
String lastweek = dt.getLastWeekTime();
System.out.print(lastweek);
}
}
分享到:
相关推荐
Java代码自动生成工具是一种高效开发辅助软件,它能够根据预设的模板或规则,自动创建出符合特定规范的Java源代码。这样的工具极大地提升了开发效率,减少了程序员在编写重复性结构化代码上的时间,使他们可以更加...
在团队协作中,统一的代码格式和模板至关重要,因为它可以减少代码审查的工作量,避免因格式问题引发的冲突。团队可以通过共享`codeFormatter.xml`和`codetemplates.xml`文件,确保所有成员遵循相同的编码标准。 ...
Java 获取当前时间代码详解 Java 获取当前时间是 Java 编程中一个非常重要的知识点。通过 Java,我们可以获取当前系统时间,并将其格式化为各种时间格式,这些格式化后的时间数据可以应用于 GUI 编程和数据库编程...
"Java经典代码"通常指的是在Java编程中常见的、实用的、经过时间检验的代码片段,这些代码可以解决常见问题,或者展示了一些核心概念和技术。在这个Java项目案例导航源代码的压缩包中,我们可以期待找到各种各样的...
Java代码注释是编程实践中非常重要的一个环节,它有助于提高代码的可读性和维护性。注释能够解释代码的功能、用途以及实现逻辑,使得其他开发者能更快地理解代码,尤其在团队协作中更是不可或缺。本资源"Java代码...
3. 显著减少在代码逐行检查上花费的时间,提高软件可靠性并节省软件开发和测试成本。 静态代码分析的主要技术包括缺陷模式匹配、类型推断、模型检查和数据流分析等。 Checkstyle 是一个开源项目,通过检查对代码...
Java代码注释是编程实践中非常重要的一个环节,它有助于提高代码的可读性和维护性。在团队合作中,良好的代码注释能够帮助其他开发者更快地理解代码的功能和逻辑,节省了阅读和调试的时间。本资源包含一个“java代码...
Java代码性能问题检查计划及方案 在Java编程中,性能问题往往是开发者关注的重点。虽然Java语言自身具有高效、跨平台的特性,但程序的运行效率却更多地取决于开发者的设计和编码习惯。本方案旨在提供一个详细的检查...
时间轮, 判断超时,java代码实现,亲测可用,一般时间轮实现网上都是c语言版
Java代码生成器是一种高效开发工具,它可以帮助程序员自动化地生成大量的基础代码,从而极大地提高开发效率,减少重复劳动。在Java开发中,特别是在企业级应用系统构建时,大量的数据访问层(DAO)、服务层(Service...
约瑟夫环问题Java代码实现 约瑟夫环问题是一种经典的算法问题,指的是在一个圆形排列的n个人中,每次从1开始报数,凡是报到m的人出局,问最后出局的人是谁。这个问题可以使用Java语言来实现。 约瑟夫环问题的Java...
描述中的"java to c# java to csharp java2c# java代码转c#"进一步强调了转换的目标,表示用户可能已经花费了一定的时间寻找如何将Java代码转换为C#的方法,这可能包括在线搜索、阅读文档或者尝试不同的工具。...
关于动态规划求最大子段和的Java代码写法 本文主要讲述了使用 Java 语言实现动态规划算法来求最大子段和的代码写法。动态规划是一种非常重要的算法设计技术,它可以解决许多复杂的问题。 首先,我们需要了解什么是...
"最快速的Java代码生成器 Rapid-Generator"是一款专为Java开发者设计的高效工具,旨在提升开发效率,减少手动编写重复代码的工作量。这款工具以其快速、灵活和强大的自定义能力在Java开发社区中受到广泛关注。 ...
Java代码实现短信猫发送短信是一项常见的通信应用,主要利用了串行通信技术。短信猫,又称GSM调制解调器,是一种硬件设备,通过USB或串口与计算机连接,可以实现短信的收发功能。在Java编程环境中,我们可以利用Java...
Java 实现抖音代码跳舞源码解析 在编程领域,尤其是移动互联网时代,各种有趣的互动功能被广泛应用,其中“代码跳舞”就是一种极具创意的技术实践。本文将深入探讨如何使用Java语言来实现类似抖音上的代码跳舞效果...
Java代码快捷编译运行工具是针对初学者设计的一款实用程序,旨在简化Java编程过程中常见的编译和运行步骤。对于刚接触Java编程的开发者来说,通过命令行(CMD)进行源码的javac编译和java运行可能会感到繁琐,而这款...
时间-时间系统-时间系统源码-时间管理系统-时间管理系统java代码-时间系统设计与实现-基于springboot的时间系统-基于Web的时间系统设计与实现-时间网站-时间网站代码-时间平台-时间平台代码-时间项目-时间项目代码-...
java代码走查计划书 java代码走查计划书是软件开发中的一种质量保证活动,旨在检查代码质量、发现代码缺陷、提高代码可维护性和可读性。该计划书详细描述了代码走查的整个过程,包括走查计划、成员角色、走查过程、...