日历源代码——java
java获取当前时间和前一天日期(实现代码)
这篇文章主要给大家介绍了关于java中optional使用的相关资料文中通过示例代码介绍的非常详细对大家的学习或者工作具有一定的参考学习价值需要的朋友们下面随着小编来一起学习学习吧
java获 取 当 前 时 间 和 前 一 天 日 期 ( 实 现 如下:
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; Date dNow = new Date(); //当前时间 Date dBefore = new Date(); Calendar calendar = Calendar.getInstance(); //得到日历 calendar.setTime(dNow);//把当前时间赋给日历 calendar.add(Calendar.DAY_OF_MONTH, -1); //设置为前一天 dBefore = calendar.getTime(); //得到前一天的时间
System.out.println("前一天的时间是:" + defaultStartDate); System.out.println("生成的时间是:" + defaultEndDate);
简易日历代码
Dim x As Variant, y As Variant, z As Integer, m As Boolean Private Sub Command1_Click()Text1.Text = ""Text3.Text = ""Text4.Text = ""Text1.Enabled = TrueText3.Enabled = TrueText4.Enabled = TrueText1.SetFocusEnd SubPrivate Sub Command2_Click()Text2.Text = DateSelect Case (Weekday(Date) - 1)Case 0Text2.Text = Text2.Text + " 星期日"Case 1Text2.Text = Text2.Text + " 星期一"Case 2Text2.Text = Text2.Text + " 星期二"Case 3Text2.Text = Text2.Text + " 星期三"Case 4Text2.Text = Text2.Text + " 星期四"Case 5Text2.Text = Text2.Text + " 星期五"Case 6Text2.Text = Text2.Text + " 星期六"End SelectText1.Text = ""Text3.Text = ""Text4.Text = ""Text1.Enabled = FalseText3.Enabled = FalseText4.Enabled = FalseEnd SubPrivate Sub Text1_Change()If Len(Text1.Text) = 4 ThenText3.SetFocusEnd IfEnd SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)Select Case KeyAsciiCase Asc("0") To Asc("9")Case ElseKeyAscii = 0End SelectEnd SubPrivate Sub Text2_GotFocus()Text2.Text = DateSelect Case (Weekday(Date) - 1)Case 0Text2.Text = Text2.Text + " 星期日"Case 1Text2.Text = Text2.Text + " 星期一"Case 2Text2.Text = Text2.Text + " 星期二"Case 3Text2.Text = Text2.Text + " 星期三"Case 4Text2.Text = Text2.Text + " 星期四"Case 5Text2.Text = Text2.Text + " 星期五"Case 6Text2.Text = Text2.Text + " 星期六"End SelectText1.Text = ""Text3.Text = ""Text4.Text = ""Text1.Enabled = FalseText3.Enabled = FalseText4.Enabled = FalseEnd SubPrivate Sub Text2_KeyPress(KeyAscii As Integer) Select Case KeyAsciiCase 48 To 57Case ElseKeyAscii = 0End SelectEnd SubPrivate Sub Text3_Change()Dim c As Integerc = Val(Text3.Text)If c <= 12 And Len(Trim(Text3.Text)) = 2 ThenText4.SetFocusElseIf Val(Text3.Text) >= 13 ThenText2.Text = "没有这一个月份"Text3.Text = ""End IfEnd SubPrivate Sub Text3_KeyPress(KeyAscii As Integer)Select Case KeyAsciiCase 48 To 57Case ElseKeyAscii = 0End SelectEnd SubPrivate Sub Text4_Change()Select Case Text3.TextCase "01", "03", "05", "07", "08", "10", "12"If Val(Text4.Text) <= 31 And Len(Trim(Text4.Text)) = 2 Then x = DateSerial(Text1.Text, Text3.Text, Text4.Text)y = Weekday(x) - 1Select Case (y)Case 0Text2.Text = "星期日"Case 1Text2.Text = "星期一"Case 2Text2.Text = "星期二"Case 3Text2.Text = "星期三"Case 4Text2.Text = "星期四"Case 5Text2.Text = "星期五"Case 6Text2.Text = "星期六"End SelectElseIf Val(Text4.Text) >= 32 ThenText2.Text = "没有这一天"Text4.Text = ""End IfCase "04", "06", "09", "11"If Val(Text4.Text) <= 30 And Len(Text4.Text) = 2 Thenx = DateSerial(Text1.Text, Text3.Text, Text4.Text)y = Weekday(x) - 1Select Case (y)Case 0Text2.Text = "星期日"Case 1Text2.Text = "星期一"Case 2Text2.Text = "星期二"Case 3Text2.Text = "星期三"Case 4Text2.Text = "星期四"Case 5Text2.Text = "星期五"Case 6Text2.Text = "星期六"End SelectElseIf Val(Text4.Text) >= 31 ThenText2.Text = "没有这一天"Text4.Text = ""End IfCase "02"Dim t As Integert = Text1.TextIf t Mod 100 = 0 ThenIf t Mod 400 = 0 Thenm = TrueElse: m = FalseEnd IfElseIf t Mod 4 = 0 Thenm = TrueElse: m = FalseEnd IfIf m = 1 ThenIf Val(Text4.Text) <= 29 And Len(Text4.Text) = 2 Thenx = DateSerial(Text1.Text, Text3.Text, Text4.Text)y = Weekday(x) - 1Select Case (y)Case 0Text2.Text = "星期日"Case 1Text2.Text = "星期一"Case 2Text2.Text = "星期二"Case 3Text2.Text = "星期三"Case 4Text2.Text = "星期四"Case 5Text2.Text = "星期五"Case 6Text2.Text = "星期六"End SelectElseIf Val(Text4.Text) >= 30 ThenText2.Text = "没有这一天"Text4.Text = ""End IfElseIf Val(Text4.Text) <= 28 And Len(Text4.Text) = 2 Thenx = DateSerial(Text1.Text, Text3.Text, Text4.Text)y = Weekday(x) - 1Select Case (y)Case 0Text2.Text = "星期日"Case 1Text2.Text = "星期一"Case 2Text2.Text = "星期二"Case 3Text2.Text = "星期三"Case 4Text2.Text = "星期四"Case 5Text2.Text = "星期五"Case 6Text2.Text = "星期六"End SelectElseIf Val(Text4.Text) >= 29 ThenText2.Text = "没有这一天"Text4.Text = ""End IfEnd IfEnd SelectEnd Sub。
JAVA处理日期时间常用方法
JA V A处理日期时间常用方法:java.util.CalendarCalendar 类是一个抽象类,它为特定瞬间与一组诸如YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期提供了一些方法。
瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间1970 年 1 月1 日的00:00:00。
000,格里高利历的偏移量.例:Calendar cal = Calendar。
getInstance(;//使用默认时区和语言环境获得一个日历。
cal。
add(Calendar.DAY_OF_MONTH, -1;//取当前日期的前一天。
cal。
add(Calendar。
DAY_OF_MONTH, +1;//取当前日期的后一天。
//通过格式化输出日期java.text.SimpleDateFormat format = new java.text。
SimpleDateFormat(”yyyy-MM—dd";System。
out.println("Today is:”+format。
format(Calendar.getInstance(.getTime (;System。
out.println("yesterday is:"+format.format(cal.getTime(;得到2007—12-25日期: Calendar calendar = new GregorianCalendar(2007,11, 25,0,0,0;Date date = calendar.getTime(;System。
out.println("2007 Christmasis:”+format.format(date;//java月份是从0—11,月份设置时要减1。
//GregorianCalendar构造方法参数依次为:年,月—1,日,时,分,秒。
JavaDate实现加一天,年月日类推往后+1,日期+1,月份+1,年份+1
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date sDate = sdf.parse(endDate); System.out.println("String类型转Date类型 "+sDate); //要实现日期+1 需要String转成Date类型
Format f = new SimpleDateFormat("yyyy-MM-dd"); System.out.println("Date结束日期:" + f.format(sDate));
Calendar c = Calendar.getInstance(); c.setTime(sDate); c.add(Calendar.DAY_OF_MONTH, 1);
//利用Calendar 实现 Date日期+1天
sDate = c.getTime(); System.out.println("Date结束日期+1 " +f.format(sDate)); //打印Date日期,显示成功+1天
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd"); endDate = sdf1.format(sDate); System.out.println("Date类型转String类型 "+endDate); //将日期转成String类型 方便进入数据库比较
java编程日历代码
}
/**
* 格式化货币,将小写转成中文大些
* @param money
* @return
*/
public static String getCapMoney(String money) {
if(decimals[0]=='0'){
if(decimals[1]=='0'){
resule = resule + "整";
}else{
resule = resule + "零" +
Chinamemoney(Integer.parseInt(String.valueOf(decimals[1]))) +
/**
* 格式化成货币类型,即四舍五入保留小数点两位,没有就补零
* @param money
* @return
*/
public static String formatcurrency(String money){
try {
if (money == null || "".equals(money)) {
}
//取得当前时间
public static String getDateTime() {
Date d = new Date();
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
resule = Chinamemoneyunit(j,
java获取年月日的方法
java获取年月日的方法Java是一种面向对象的编程语言,广泛应用于软件开发领域。
在Java中,获取年月日是一项常见的操作,可以通过多种方法实现。
下面,我将为大家介绍一些常用的获取年月日的方法,并解释它们的使用方式。
一、使用Java内置的日期类Java提供了多个日期类,其中最常用的是`Date`和`Calendar`类。
这两个类都可以用于获取年月日,但它们的使用方式有所不同。
1. `Date`类`Date`类是`java.util`包中的一个类,可以表示一个特定的时间点。
要获取当前的年月日,可以使用`Date`类的`getYear()`、`getMonth()`和`getDate()`方法。
需要注意的是,`getYear()`方法返回的年份是相对于1900的偏移量,所以需要将其加上1900才能得到真实的年份。
```javaDate currentDate = new Date();int year = currentDate.getYear() + 1900;int month = currentDate.getMonth() + 1;int day = currentDate.getDate();System.out.println("当前日期:" + year + "年" + month + "月" + day + "日");```2. `Calendar`类`Calendar`类是`java.util`包中的一个抽象类,它提供了丰富的日期操作方法。
与`Date`类相比,`Calendar`类更常用,因为它可以处理更复杂的日期计算。
要获取当前的年月日,可以使用`Calendar`类的`get()`方法,并传入相应的`Calendar`字段参数,如`Calendar.YEAR`、`Calendar.MONTH`和`Calendar.DAY_OF_MONTH`。
java万年历源代码(可运行)
private JScrollPane sp = new JScrollPane(table);
private JButton bLastYear = new JButton("上一年");
p3.add(jsp, BorderLayout.CENTER);
p3.add(p2, BorderLayout.SOUTH);
p3.add(ld, BorderLayout.NORTH);
private JTextArea jta = new JTextArea(); //jta--JTextArea
private JScrollPane jsp = new JScrollPane(jta);
private JLabel l = new JLabel("年份文本框中可直接键入要查找的年份,以提高查询效率");
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
//import java.sql.Date;
cld.set(Integer.parseInt(strDate[0]), Integer.parseInt(strDate[1])-1, 0);
showCalendar(Integer.parseInt(strDate[0]), Integer.parseInt(strDate[1]), cld);
java获取年月日的方法
Java获取年月日的方法在Java编程中,我们经常需要获取当前的年、月和日。
这些信息在许多应用程序中都是必需的,例如日历应用、日期处理和数据分析等。
本文将介绍几种获取年月日的方法,帮助你在Java中轻松地处理日期。
1. 使用Java.util.Date类Java.util.Date类是Java中处理日期和时间的基本类之一。
要获取当前的年、月和日,可以使用以下代码:import java.util.Date;import java.text.SimpleDateFormat;public class Main {public static void main(String[] args) {Date date = new Date();SimpleDateFormat sdfYear = new SimpleDateFormat("yyyy");SimpleDateFormat sdfMonth = new SimpleDateFormat("MM");SimpleDateFormat sdfDay = new SimpleDateFormat("dd");String year = sdfYear.format(date);String month = sdfMonth.format(date);String day = sdfDay.format(date);System.out.println("Year: " + year);System.out.println("Month: " + month);System.out.println("Day: " + day);}}在上面的代码中,我们使用了SimpleDateFormat类来格式化日期。
通过传入不同的格式化模式,我们可以获取所需的日期部分。
使用Java创建简单的日历应用程序
使用Java创建简单的日历应用程序-一个实战教程日历应用程序是一个有用的工具,它允许用户记录和管理事件、约会和提醒。
在这个实战博客中,我们将创建一个Java日历应用程序,演示如何使用Java编程语言和图形用户界面(GUI)库来实现事件管理和日期选择功能。
以下是本实战博客的主要内容:项目概述准备工作创建Java项目设计GUI界面实现日历视图添加事件管理功能总结让我们开始吧!1. 项目概述在本项目中,我们将创建一个简单的Java日历应用程序,它包括以下主要功能:显示日历界面,允许用户选择日期。
在日历中标记已经安排的事件和约会。
允许用户添加、编辑和删除事件。
提供事件的日期和时间提醒功能。
我们将使用Java编程语言和Swing GUI库来构建这个日历应用程序。
2. 准备工作在开始之前,确保您的开发环境已设置好。
我们将使用Java编程语言和Swing库来构建日历应用程序,不需要额外的工具或库。
3. 创建Java项目首先,创建一个新的Java项目,您可以使用任何Java集成开发环境(IDE)来完成此操作。
在项目中,我们将创建Java类来实现日历应用程序。
4. 设计GUI界面我们将创建一个简单的Swing GUI界面,用于显示日历界面和事件列表。
创建一个Java类,例如CalendarApp,并在其中创建GUI界面。
javaCopy codeimport javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Calendar;import java.util.Date;public class CalendarApp {private JFrame frame;private JPanel calendarPanel;private JPanel eventPanel;private JTextArea eventList;private JButton addButton;private JButton editButton;private JButton deleteButton;public CalendarApp() {frame = new JFrame("日历应用程序");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(800, 600);frame.setLayout(new BorderLayout());calendarPanel = new JPanel(new BorderLayout());eventPanel = new JPanel(new BorderLayout());eventList = new JTextArea();eventList.setEditable(false);JScrollPane eventScrollPane = new JScrollPane(eventList);addButton = new JButton("添加事件");editButton = new JButton("编辑事件");deleteButton = new JButton("删除事件");eventPanel.add(eventScrollPane, BorderLayout.CENTER);eventPanel.add(addButton, BorderLayout.NORTH);eventPanel.add(editButton, BorderLayout.WEST);eventPanel.add(deleteButton, BorderLayout.EAST);frame.add(calendarPanel, BorderLayout.WEST);frame.add(eventPanel, BorderLayout.CENTER);addButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {addEvent();}});editButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {editEvent();}});deleteButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {deleteEvent();}});frame.setVisible(true);}public static void main(String[] args) {SwingUtilities.invokeLater(() -> new CalendarApp());}private void addEvent() {// 实现添加事件的代码,略...}private void editEvent() {// 实现编辑事件的代码,略...}private void deleteEvent() {// 实现删除事件的代码,略...}}在上述代码中,我们创建了一个CalendarApp类,包括一个Swing窗口、日历界面和事件列表。
Java获取法定节假日并解析
Java获取法定节假日并解析1、接口调用:http://2、具体代码(红色部分为主要解析代码):/*** 日历导入根工具*/public class CalenderUtils {public static void main(String[] args) throws Exception {Prop p = e("jfinal_club_config_dev.txt");DruidPlugin druidPlugin = new DruidPlugin(p.get("jdbcUrl"), p.get("user"), p.get("password").trim());WallFilter wallFilter = new WallFilter();wallFilter.setDbType("mysql");druidPlugin.addFilter(wallFilter);druidPlugin.addFilter(new StatFilter());//me.add(druidPlugin);druidPlugin.start();ActiveRecordPlugin activeRecordPlugin = new ActiveRecordPlugin("mysql", druidPlugin);activeRecordPlugin.setContainerFactory(new CaseInsensitiveContainerFactory(true));_MappingKit.mapping(activeRecordPlugin);activeRecordPlugin.start();//arp.addMapping("c_workday", "id", Workday.class);List<Date> day2019 = getBetweenDates(new SimpleDateFormat("yyyy-MM-dd").parse("2020-01-01"), new SimpleDateFormat("yyyy-MM-dd").parse("2021-01-01"));for (Date day : day2019) {CloseableHttpClient httpCilent = HttpClients.createDefault();HttpGet httpGet = new HttpGet("/api/holiday/info/" + new SimpleDateFormat("yyyy-MM-dd").format(day));try {HttpResponse response = httpCilent.execute(httpGet);String line;JSONObject resultJsonObject;StringBuilder entityStringBuilder = new StringBuilder();BufferedReader b = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"), 8 * 1024);while ((line = b.readLine()) != null) {entityStringBuilder.append(line);}//利用从HttpEntity中得到的String生成JsonObjectSystem.out.println(new SimpleDateFormat("yyyy-MM-dd").format(day) + "-->" + entityStringBuilder.toString());resultJsonObject = JSON.parseObject(entityStringBuilder.toString());Workday workday = new Workday();workday.setIsDelete(0);workday.setId(StringHELP.getUUID());workday.setDate(day);workday.setPublisher("1");workday.setPublisherName("admin");workday.setPublishDate(new Date());workday.setSubmitDate(new Date());workday.setStatus(0);workday.setStatuscashbag(1);//判断接口请求是否成功if(resultJsonObject.get("code").toString().equals("0")){//获取日期类型,进行相关逻辑处理//首先判断是否是节假日,是的话JSONObject objtype = JSON.parseObject(resultJsonObject.get("type").toString());System.out.println(objtype.get("type").toString());if(objtype.get("type").toString().equals("0")){workday.setType(1);}elseif(objtype.get("type").toString().equals("1")&&resultJsonObject.g et("holiday")==null){workday.setType(0);}else if(resultJsonObject.get("holiday")!=null){JSONObject objholiday = JSON.parseObject(resultJsonObject.get("holiday").toString());if(objholiday.get("holiday").toString().equals("true")){workday.setType(0);}else{workday.setType(1);}}}System.out.println("最终结果:"+workday.getType());//workday.setType(resultJsonObject.getInteger("data") == 0 || resultJsonObject.getInteger("data") == 2 ? 1 : 0);workday.setYear(day.getYear() + 1900);workday.setMonth(day.getMonth() + 1);workday.save();} catch (Exception e) {e.printStackTrace();} finally {try {httpCilent.close();//释放资源} catch (IOException e) {e.printStackTrace();}}}}/*** 获取两个日期之间的日期,包括开始结束日期* @param start 开始日期* @param end 结束日期* @return 日期集合*/private static List<Date> getBetweenDates(Date start, Date end) {List<Date> result = new ArrayList<>();Calendar tempStart = Calendar.getInstance();tempStart.setTime(start);tempStart.add(Calendar.DAY_OF_YEAR, 1);Calendar tempEnd = Calendar.getInstance();tempEnd.setTime(end);result.add(start);while (tempStart.before(tempEnd)) {result.add(tempStart.getTime());tempStart.add(Calendar.DAY_OF_YEAR, 1);}return result;}}。
java万年历程序代码
package pack;import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Calendar;import java.util.Date;public class rili extends JFrame implements ActionListener { JButton b_today, b_query;JLabel lb_Year, lb_Month;JButton b_week[] = new JButton[7];JButton b_day[][] = new JButton[6][7];Container thisContainer;JPanel pUp;JPanel pCenter;JPanel pCenter_week, pCenter_day;JComboBox year, month;public void init() {b_today = new JButton("Today");b_query = new JButton("Query");setTitle("日历");lb_Year = new JLabel("Year");lb_Month = new JLabel("Month");year = new JComboBox();month = new JComboBox();setDate();pUp = new JPanel();pUp.add(lb_Year);pUp.add(year);pUp.add(lb_Month);pUp.add(month);pUp.add(b_today);pUp.add(b_query);b_today.addActionListener(this);b_query.addActionListener(this);pCenter = new JPanel();pCenter_week = new JPanel();b_week[0] = new JButton("星期日");b_week[1] = new JButton("星期一");b_week[2] = new JButton("星期二");b_week[3] = new JButton("星期三");b_week[4] = new JButton("星期四");b_week[5] = new JButton("星期五");b_week[6] = new JButton("星期六");b_week[0].setSize(400, 200);b_week[1].setSize(400, 200);b_week[2].setSize(400, 200);b_week[3].setSize(400, 200);b_week[4].setSize(400, 200);b_week[5].setSize(400, 200);b_week[6].setSize(400, 200);for (int i = 0; i < 7; i++) {b_week[i].setEnabled(false);pCenter_week.add(b_week[i]);}pCenter_day = new JPanel();for (int cols = 0; cols < 6; cols++) {for (int rows = 0; rows < 7; rows++) {b_day[cols][rows] = new JButton("");b_day[cols][rows].setSize(400, 200);this.pCenter_day.add(b_day[cols][rows]);}}pCenter_day.setLayout(new GridLayout(6, 7));setDay(Integer.parseInt(this.year.getSelectedItem().toString()),Integer.parseInt(this.month.getSelectedItem().toString()));// setDay(2011,2);pCenter.setLayout(new BorderLayout());pCenter.add(pCenter_week, "North");pCenter.add(pCenter_day, "Center");thisContainer = this.getContentPane();thisContainer.setLayout(new BorderLayout());thisContainer.add(pUp, "North");thisContainer.add(pCenter, "Center");this.setVisible(true);this.setResizable(false);this.pack();}public void setDate() {int year, month, day, week;Calendar cal = Calendar.getInstance();year = cal.get(Calendar.YEAR);month = cal.get(Calendar.MONTH);day = cal.get(Calendar.DA TE);week = cal.get(Calendar.WEEK_OF_YEAR);int year_temp = year - 4;for (int i = 0; i < 10; i++) {this.year.addItem(year_temp);year_temp += 1;}this.year.setSelectedIndex(4);for (int n = 0; n < 12; n++) {this.month.addItem(n + 1);}this.month.setSelectedIndex(month);}public void setDay(int Year, int Month) {int count;Calendar c = Calendar.getInstance();c.clear();c.set(Year, Month-1, 1);count = c.getActualMaximum(Calendar.DAY_OF_MONTH); // 总天数System.out.print(count);int day = c.get(Calendar.DAY_OF_WEEK) - 1; // 0为星期天,6为星期六System.out.print(day);int i = 1 - day;for (int cols = 0; cols < 6; cols++) {for (int rows = 0; rows < 7; rows++) {String st = String.valueOf(i);b_day[cols][rows].setText(st);b_day[cols][rows].setEnabled(false);if (i > 0 && i <= count)b_day[cols][rows].setVisible(true);elseb_day[cols][rows].setVisible(false);i++;}}}public void actionPerformed(ActionEvent e) {if (e.getSource() == b_query) {this.setDay(Integer.parseInt(this.year.getSelectedItem().toString()), Integer.parseInt(this.month.getSelectedItem().toString()));}if (e.getSource() == b_today) {int year, month;Calendar cal = Calendar.getInstance();year = cal.get(Calendar.YEAR);month = cal.get(Calendar.MONTH)+1;this.setDay(year,month);}}public static void main(String[] args) {rili rl = new rili();rl.init();}}。
JAVA常用API:日历类Calendar
JAVA常⽤API:⽇历类CalendarCalendar⽇历类在Date后出现,替换了很多Date类的⽅法。
该类将所有可能⽤到的时间信息封装为静态成员变量,⽅便获取。
Calendar为抽象类,由于语⾔的敏感性,Calendar类在创建对象时并⾮直接通过⼦类创建,⽽是通过静态⽅法创建,将语⾔敏感内容处理好,再返回⼦类对象Calendar ca = Calendar.getInstance();⼀、Calendar类的常⽤⽅法get(int field);返回intCalendar ca = Calendar.getInstance();获取年int year = ca.get(Calendar.YEAR); //类名直接调⽤静态属性获取⽉int month = ca.get(Calendar.MONTH);获取⽇int day = ca.get(Calendar.DAY_OF_MONTH);/*字段:年:YEAR⽉:MONTH ⽉从0开始,0-11,故得到⽉应+1⽇:DAY_OF_MONTH,天:DATE(与DAY_OF_MONTH同)时:HOUR分:MINUTE秒:SECOND*/2. add⽅法,对指定字段增加某值. add(Calendar.属性名,int 增加的量)Calendar ca = Calendar.getInstance();//把对象ca内的时间修改为3天后ca.add(Calendar.DATE,3);//修改对象ca内的时间为5⼩时后ca.add(Calendar.HOUR,5);2. set⽅法,对指定字段进⾏设置, set(Calendar.属性名,int 设置的值);Calendar ca = Calendar.getInstance();设置时间为2018年8⽉8⽇ca.set(Calendar.YEAR,2018);ca.set(Calendar.MONTH,7);ca.set(Calendar.DATE,8);⼀次性设置三个ca.set(2018,7,8);3. getTime(); 返回⼀个Date对象Calendar ca = Calendar.getInstance();Date date = ca.getTime();。
java日历之GUI界面化
public void mouseClicked(MouseEvent e) { } public void mouseReleased(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public static void main(String args[]) { Calendar calendar=Calendar.getInstance(); int y=calendar.get(Calendar.YEAR); int m=calendar.get(Calendar.MONTH)+1; int d=calendar.get(Calendar.DAY_OF_MONTH); new CalendarPad(y,m,d); } }
} for(int i=0;i<星期几;i++) { showDay[i].setText(""); } for(int i=星期几+月天数;i<42;i++) { showDay[i].setText(""); }
} if(i%7==0) { showDay[i].setForeground(Color.red); } n++;
} public void 排列号码(int 星期几,int 月天数) { for(int i=星期几,n=1;i<星期几+月天数;i++) { showDay[i].setText(""+n); if(n==day) { showDay[i].setForeground(Color.green); showDay[i].setFont(new Font("TimesRoman",Font.BOLD,20)); } else { showDay[i].setFont(new Font("TimesRoman",Font.BOLD,12)); showDay[i].setForeground(Color.black); } if(i%7==6) { showDay[i].setForeground(Color.blue);
java中获取工作日时间的方法
java中获取工作日时间的方法(原创实用版4篇)《java中获取工作日时间的方法》篇1在Java 中,你可以通过使用`Calendar` 和`Date` 类来获取工作日时间。
以下是一个示例代码,用于获取当前时间的工作日信息:```javaimport java.util.Calendar;import java.util.Date;public class WorkDayExample {public static void main(String[] args) {// 获取当前时间Date currentDate = new Date();// 创建Calendar 对象并设置当前时间Calendar calendar = Calendar.getInstance();calendar.setTime(currentDate);// 获取当前时间的星期几(0 表示星期日,1 表示星期一,以此类推)int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);// 如果当前时间为工作日,则输出"今天是工作日"if (dayOfWeek == Calendar.MONDAY || dayOfWeek == Calendar.TUESDAY ||dayOfWeek == Calendar.WEDNESDAY || dayOfWeek == Calendar.THURSDAY ||dayOfWeek == Calendar.FRIDAY) {System.out.println("今天是工作日");} else {System.out.println("今天是周末");}}}```请注意,这个示例代码将输出当前时间的工作日信息。
《java中获取工作日时间的方法》篇2在Java 中,可以使用`Calendar` 和`Date` 类来获取工作日时间。
java中关于日期类Calendar的简单使用
java中关于⽇期类Calendar的简单使⽤根据年⽉获取⽉份第⼀天public static String getSDateOfMonth(String monthId) {String SDate;Calendar cal = Calendar.getInstance();int year = cal.get(Calendar.YEAR);int month = cal.get(Calendar.MONTH) + 1;int y = Integer.parseInt(monthId.substring(0, 4));int m = Integer.parseInt(monthId.substring(4, 6));if (y == year && m == month) {if (month < 10) {// ⽉份少于10SDate = "" + year + "-0" + month + "-01";} else {SDate = "" + year + month + "-01";}} else {// 不是当前⽉if (m < 10) {// ⽉份少于10SDate = "" + y + "-0" + m + "-01";} else {SDate = "" + y + m + "-01";}}return SDate;};根据年⽉获取⽉份最后⼀天public static String getLastDayOfMonth(String monthId) {int year = Integer.parseInt(monthId.substring(0, 4));int month = Integer.parseInt(monthId.substring(4, 6));Calendar cal = Calendar.getInstance();// 设置年份cal.set(Calendar.YEAR, year);// 设置⽉份cal.set(Calendar.MONTH, month - 1);// 获取某⽉最⼤天数int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);// 设置⽇历中⽉份的最⼤天数cal.set(Calendar.DAY_OF_MONTH, lastDay);// 格式化⽇期SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");String lastDayOfMonth = sdf.format(cal.getTime());return lastDayOfMonth;};判断是否是当前年⽉public static boolean isCurrentMonth(String month) {Calendar cal = Calendar.getInstance();int currentYear = cal.get(Calendar.YEAR);int currentMonth = cal.get(Calendar.MONTH) + 1;int y = Integer.parseInt(month.substring(0, 4));int m = Integer.parseInt(month.substring(4, 6));if (y == currentYear && m == currentMonth) {return true;}else{return false;}};SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");//获取前⽉的第⼀天Calendar cal_1=Calendar.getInstance();//获取当前⽇期cal_1.add(Calendar.MONTH, -1);cal_1.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前⽇期既为本⽉第⼀天firstDay = format.format(cal_1.getTime());System.out.println("-----1------firstDay:"+firstDay);//获取前⽉的最后⼀天Calendar cale = Calendar.getInstance();cale.set(Calendar.DAY_OF_MONTH,0);//设置为1号,当前⽇期既为本⽉第⼀天lastDay = format.format(cale.getTime());System.out.println("-----2------lastDay:"+lastDay);//获取当前⽉第⼀天:Calendar c = Calendar.getInstance();c.add(Calendar.MONTH, 0);c.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前⽇期既为本⽉第⼀天String first = format.format(c.getTime());System.out.println("===============first:"+first);//获取当前⽉最后⼀天Calendar ca = Calendar.getInstance();ca.set(Calendar.DAY_OF_MONTH, ca.getActualMaximum(Calendar.DAY_OF_MONTH)); String last = format.format(ca.getTime());System.out.println("===============last:"+last);。
JAVA万年历系统课程设计报告附源码
2013-2014学年第二学期《面向对象程序设计》课程设计报告题目:万年历系统专业:计算机科学与技术班级:姓名:学号:指导教师:成绩:计算机与信息工程系2014年6月6日目录1设计内容及要求设计内容万年历,实际上就是记录一定时间范围内(比如100年或更多)的具体阳历或阴历的日期的年历,方便有需要的人查询使用。
在我设计的万年历中主要有:(1)使用图形用户界面来查询用用户所需的日期信息,符合日常软件使用规范。
(2)按月份查询,实现了显示查询1901~2100年某月所有日期的阴阳历对照。
(3)并且添加了重大节日与星座等信息,界面采用日常的星期与月份结合的格式,方便查看与使用。
(4)编写万年历的课程设计,是为了使同学们更加了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。
为后续各门计算机课程的学习和毕业设计打下坚实基础。
设计任务及具体要求利用JAVA语言编写的万年历系统采用了多种JAVA语句来实现多种功能。
用户可以通过本程序的applet运行界面来查找一整年某月的农历和阳历,可以查找用户所想了解的某一天具体为星期几,并且可以看到一些重大节日的具体时间。
要求:满足设计万年历系统的目的,即当用户查询年份与月份时,系统就要将这一年的某一月份的阴历与阳历全部显示出来,并且附带这一月份的重大节日。
当用户随意改动年份或月份时系统自动显示与星期对应的日期。
用户点击日期时系统会显示具体星座信息。
2概要设计程序设计思路(1)总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。
然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。
Java时间类-Calendar、Date、LocalDateLocalTime
Java时间类-Calendar、Date、LocalDateLocalTime1、Date 类 java.util.Date是⼀个“万能接⼝”,它包含⽇期、时间,还有毫秒数,如果你只想⽤java.util.Date存储⽇期,或者只存储时间,那么,只有你知道哪些部分的数据是有⽤的,哪些部分的数据是不能⽤的。
1.1 Date的构造⽅法 Date 是我们使⽤的最多的⼀个⽇期类,Date提供的构造⽅法在官⽅API中有⼀下⼏种: Date 类提供了多种构造⽅法,但是⽬前有很多⽅法都已经不建议使⽤public Date() {this(System.currentTimeMillis());}public Date(long date) {fastTime = date;}@Deprecatedpublic Date(int year, int month, int date) {this(year, month, date, 0, 0, 0);}@Deprecatedpublic Date(int year, int month, int date, int hrs, int min) {this(year, month, date, hrs, min, 0);}@Deprecatedpublic Date(int year, int month, int date, int hrs, int min, int sec)@Deprecatedpublic Date(String s) {this(parse(s));} ⽬前我们可以通过使⽤:Date date0 = new Date();Date date1 = new Date(time); 这两种⽅法创建对象的不同主要是通过指定的时间戳不同,通过设置Date 中的fastTime 进⾏设置Date 对象的时间。
除了使⽤构造⽅法获取实例,Date 还可以通过Instant来创建⼀个Date 实例:Instant instant = Instant.now();Date date = Date.from(instant); Instant 是Java 8 提供的新特性: 1.2 Date的常⽤⽅法 Date 类中,提供了常⽤的获取:年,⽉,⽇,时,分,秒等⽅法:Date date = new Date();int dates = date.getDate();int year = date.getYear();int month = date.getMonth();int day = date.getDay();int hours = date.getHours();int min = date.getMinutes();int second = date.getSeconds();long time = date.getTime();int times = date.getTimezoneOffset(); 输出结果:dates: 14year: 116month: 11day: 3hours: 15min: 8second: 29time: 1481699309422times: -480 读者可能会发现,这⾥的年份并不是我们想要的,这⾥主要是因为代码⽅法实现:我们可以看到,这⾥的getYear 并不是获取当前年份,⽽是获取到和1900年的差值,这⾥主要是因为JDK⽼版本遗留下来的问题,对于Date 中获取年⽉⽇的⽅法,现在已经不建议使⽤了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
日历源代码——java
//import java.sql.Date;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Locale;
public class GregorianCalendar日历 {
public static void main(String[] args) { //设置不同地区
Locale.setDefault();
//创建当前日历对象
GregorianCalendar now = new GregorianCalendar();
//从当前时期对象是取出时间日期对象
//编辑错误:Type mismatch: cannot convert from java.util.Date to java.sql.Date
Date date = now.getTime();
//将时间日期对象按字符形式打印
System.out.println(date.toString());
//重新将时间对象设置到日期对象中
now.setTime(date);
//从当前日期对象是取出当前月份、日期
int today =
now.get(Calendar.DAY_OF_MONTH);
int month = now.get(Calendar.MONTH);
//获取本月开始日期
now.set(Calendar.DAY_OF_MONTH, 1);
//获取本月开始日期在一周中的编号
int week = now.get(Calendar.DAY_OF_WEEK);
//打印日历头并换行设置当前月中第一天的开始位置
System.out.println("星期日星期一星期二
星期三星期四星期五星期六");
//设置当前月中第一天的开始位置
for( int i = Calendar.SUNDAY; i < week; i++){ System.out.print(" ");
//按规格打印当前月的日期数字
while(now.get(Calendar.MONTH) ==
month){
//取出当前日期
int day =
now.get(Calendar.DAY_OF_MONTH);
//设置日期数字小于10与不小于10两种情况的打
印规格
if(day < 10){
//设置当前日期的表现形式
if(day == today)
System.out.print(" <" + day + "> ");
else
System.out.print(" " + day + " ");
}
else{
//设置当前日期的表现形式
if(day == today)
System.out.print(" <" + day + "> ");
else
System.out.print(" " + day + " ");
}
//设置什么时候换行
if(week == Calendar.SATURDAY)
System.out.println();
//设置日期与星期几为下一天
now.add(Calendar.DAY_OF_MONTH, 1);
week = now.get(Calendar.DAY_OF_WEEK);
}
}
}
}。