「java时间分割」java按分割
本篇文章给大家谈谈java时间分割,以及java按分割对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、如何用java实现将一天的7:30-22:05按照下面的时间段分成13段,判断当前时间在哪一段时间里?
- 2、java 里List把集合里的连续时间(按天)进行分割,拼接成时间连续的字符串输出
- 3、任意一个起止时间段(如:20160101-20161009),用java将这个时间段拆分成一个个按自然周组成的时间段
- 4、java 如何把string 型2012-01-01截取成年月日
如何用java实现将一天的7:30-22:05按照下面的时间段分成13段,判断当前时间在哪一段时间里?
你可以用一个字符串类型的数组将13节存入其中,然后循环比较。比较的时候要将字条串用split(“-”)先分割开,再分别转为Date类型。假如d1是起始时间,d2是结束时间,当前时间是d3,d3.after(d1)为true,d3.before(d2)为true时,当前时间就是这一节中,循环变量i+1是第几节。
望采纳
以下是实现方法:我只举了三个时间段
String[] dates = new String[3];
dates[0] = "1:00-8:00";
dates[1] = "8:00-16:00";
dates[2] = "16:00-24:00";
for (int i = 0; i dates.length; i++) {
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
String currentDate = sdf.format(new Date());
String dateStr = dates[i];
String[] dateArr = dateStr.split("-");
try {
Date currDate = sdf.parse(currentDate);//当前时间
Date startDate = sdf.parse(dateArr[0]);//每节开始时间
Date endDate = sdf.parse(dateArr[1]);//每节结束时间
if(currDate.after(startDate) currDate.before(endDate)){
System.out.println("当前时间属于第"+(i+1)+"节");
}
} catch (ParseException e) {
e.printStackTrace();
}
}
}
java 里List把集合里的连续时间(按天)进行分割,拼接成时间连续的字符串输出
%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%
%@ taglib prefix="s" uri="/struts-tags"%
%
String basePath = request.getContextPath() + "/";
%
html
head
title新闻列表/title
script type="text/javascript" language="javascript"
src="%=basePath%resources/js/jquery.js"/script
script type="text/javascript" language="javascript"
src="%=basePath%resources/js/json2.js"/script
/head
body
form id="hrq" method="post"
input type="hidden" id="totalPage" name="totalPages"
value="${pageInfo.totalPages}" /
input type="hidden" id="currentPage" name="currentPage"
value="${pageInfo.currentPage}" /
s:if test="%{newsBeanList.size 0}"
s:iterator value="newsBeanList"
tr
a href="javascript:void(0)" onclick="queryNewsInfo('${newsContent}')"
s:property value="%{newsContent}" /
/a
br/
/tr
/s:iterator
/s:if
s:else
tr
td style="text-align: center"
无记录
/td
/tr
/s:else
tr
th align="right" colspan="9"
span
input type="button" value='上一页' onClick="doGoToLastPagebutton(document.getElementById('currentPage').value)" /
input type="button" value='下一页' onClick="doGoToNextPagebutton(document.getElementById('currentPage').value)" /
input type="button" value='末页' onClick="doGoToEndPagebutton(document.getElementById('totalPage').value)" /
input type="text" style="display: none;" /
input type="text" id="gotoPage" value="" size="4" maxlength="8" /
input type="button" value='跳转' onClick="doGoToPagebutton(document.getElementById('gotoPage').value)" /
/span
/th
/tr
/form
script type="text/javascript"
/**
* 分页跳转
*/
function doGoToPagebutton(gotoPage)
{
if(gotoPage == 0)
{
gotoPage = 1;
}
document.forms[0].target = "";
document.forms[0].action = "%=basePath%regionNews/queryRegionNews.action?pageInfo.numPerPage=${pageInfo.numPerPage}pageInfo.currentPage=" + gotoPage;
document.forms[0].submit();
}
//上一页
function doGoToLastPagebutton(currentPage)
{
var gotoPage;
if(currentPage==1)
{
gotoPage =1;
}
else
{
gotoPage = currentPage -1;
}
document.forms[0].target = "";
document.forms[0].action = "%=basePath%regionNews/queryRegionNews.action?pageInfo.numPerPage=${pageInfo.numPerPage}pageInfo.currentPage=" + gotoPage;
document.forms[0].submit();
}
//下一页
function doGoToNextPagebutton(currentPage)
{
var gotoPage;
gotoPage = parseInt(currentPage) +parseInt(1);
document.forms[0].target = "";
document.forms[0].action = "%=basePath%regionNews/queryRegionNews.action?pageInfo.numPerPage=${pageInfo.numPerPage}pageInfo.currentPage=" + gotoPage;
document.forms[0].submit();
}
//末页
function doGoToEndPagebutton(totalPage)
{
document.forms[0].target = "";
document.forms[0].action = "%=basePath%regionNews/queryRegionNews.action?pageInfo.numPerPage=${pageInfo.numPerPage}pageInfo.currentPage=" + totalPage;
document.forms[0].submit();
}
/script
/body
/html
任意一个起止时间段(如:20160101-20161009),用java将这个时间段拆分成一个个按自然周组成的时间段
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
public class Week {
public static void main(String[] args) throws ParseException {
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdw = new SimpleDateFormat("E");
System.out.println("请输入时间段,格式如:20160101-20161111(不足10位以0补足)");
Scanner s = new Scanner(System.in);
String date = s.next();
String begin_date = date.split("-")[0];
String end_date = date.split("-")[1];
String begin_date_fm = begin_date.substring(0, 4) + "-" + begin_date.substring(5,6) + "-" + begin_date.substring(7,8);
String end_date_fm = end_date.substring(0, 4) + "-" + end_date.substring(5,6) + "-" + end_date.substring(7,8);
Date b = null;
Date e = null;
try {
b = sd.parse(begin_date_fm);
e = sd.parse(end_date_fm);
} catch (ParseException ee) {
ee.printStackTrace();
}
Calendar rightNow = Calendar.getInstance();
rightNow.setTime(b);
Date time = b;
String year = begin_date_fm.split("-")[0];
String mon = Integer.parseInt(begin_date_fm.split("-")[1])10?"0"+begin_date_fm.split("-")[1]:begin_date_fm.split("-")[1];
String day = Integer.parseInt(begin_date_fm.split("-")[2])10?"0"+begin_date_fm.split("-")[2]:begin_date_fm.split("-")[2];
String timeb = year+mon+day;
String timee = null;
while(time.getTime()=e.getTime()){
rightNow.add(Calendar.DAY_OF_YEAR,1);
time = sd.parse(sd.format(rightNow.getTime()));
String timew = sdw.format(time);
if(("星期一").equals(timew)){
timeb = (sd.format(time)).replaceAll("-", "");
}
if(("星期日").equals(timew) || ("星期七").equals(timew) || time.getTime() == e.getTime()){
timee = (sd.format(time)).replaceAll("-", "");
System.out.println(timeb+"-"+timee);
}
}
}
}
java 如何把string 型2012-01-01截取成年月日
使用simpldedateformat 和calendar 进行转化,
解决的思路是,
1、先把字符串根据格式使用simpleDateFormat
2、把你要解析的字符串,通过simpleDateFormat的工具转成Date类型的
3、得到calendar日历类,并把转换后的Date放入日历类中。
4、通过calendar类中的方法可以获取到传入的Date的年月日。
ps:由于月份是从0开始计算的,所以在获取的时候要+1
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = sf.parse("2015-12-01");
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
System.out.println(calendar.get(Calendar.YEAR));
System.out.println(calendar.get(Calendar.MONTH) + 1);
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
} catch (ParseException e) {
e.printStackTrace();
}
java时间分割的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java按分割、java时间分割的信息别忘了在本站进行查找喔。