-
java 时间的累加_Java时间工具类汇总(不断累积):java编程时涉及到的时间格式的转换...
2021-03-09 08:15:14importjava.sql.Timestamp;/***** @function 关于时间戳与时间格式互换的工具方法*/public classDateFormat {/*** 默认日期格式*/private static final String DEFAULT_FORMAT = "yyyy-MM-dd HH:mm:s...packagecom.shd.biz.appInterface.utils;importjava.sql.Timestamp;/***
*
* @function 关于时间戳与时间格式互换的工具方法*/
public classDateFormat {/*** 默认日期格式*/
private static final String DEFAULT_FORMAT = "yyyy-MM-dd HH:mm:ss";/*** 默认构造函数*/
publicDateFormat(){
}/***@paramdate 日期
*@paramformat 日期格式
*@return返回format格式的字符串*/
publicString DateToString_Format(Date date,String format){if(date != null){
SimpleDateFormat sdf= newSimpleDateFormat(format);returnsdf.format(date);
}return null;
}/***@paramdate 日期
*@return返回默认日期格式的字符串*/
publicString DateToString_DefaultFormat(Date date){if(date == null){return null;
}
SimpleDateFormat sdf= newSimpleDateFormat(DEFAULT_FORMAT);returnsdf.format(date);
}/*** 时间戳转换为字符串
*@paramtime
*@return
*/
publicString timestampToString(Timestamp time) {
Date date= null;if(null !=time){
date= newDate(time.getTime());
}returnDateToString_DefaultFormat(date);
}/*** 时间戳转换为字符串,日期格式:yyyy-MM-dd
*@paramtime
*@return
*/
publicString timestampToString2(Timestamp time) {
Date date= null;if(null !=time){
date= newDate(time.getTime());
}return DateToString_Format(date,"yyyy-MM-dd");
}/***@paramstring 字符串
*@paramformat 日期格式
*@return日期
*@throwsjava.text.ParseException*/
publicDate StringToDate(String string, String format){if(string == null || "".equals(string)){return null;
}else{//...如果没有指定字符串转换的格式,则默认为“yyyy-MM-dd HH:mm:ss”
if(format ==null || "".equals(format)){
format= "yyyy-MM-dd HH:mm:ss";
}
SimpleDateFormat sdf= newSimpleDateFormat(format);
Date date= null;try{
date=sdf.parse(string);returndate;
}catch(ParseException e){
e.printStackTrace();
}return null;
}
}
}
-
java8 lambda 求和_Java lambda 循环累加求和代码
2021-02-28 17:42:40Java lambda 循环累加求和代码发布时间:2020-09-09 00:37:46来源:脚本之家阅读:161作者:我写的代码会爆炸java 8 stream 提供了下面几种类型的求和Stream::mapToIntStream::mapToDoubleStream::mapToLongpublic ...Java lambda 循环累加求和代码
发布时间:2020-09-09 00:37:46
来源:脚本之家
阅读:161
作者:我写的代码会爆炸
java 8 stream 提供了下面几种类型的求和
Stream::mapToInt
Stream::mapToDouble
Stream::mapToLong
public void test() {
List people = new ArrayList<>();
people.add(new Person("zhangsan",20));
people.add(new Person("lisi", 26));
people.add(new Person("wangwu",35));
int sum = people.stream()
.mapToInt(p -> p.getAge())
.sum();
System.out.println("Total of ages " + sum);
}
但是没有BigDecimal类型,可以使用下面方法实现
public void test() {
List list = new ArrayList<>();
list.add(new Person("zhangsan", 20, new BigDecimal(10.5)));
list.add(new Person("lisi", 26, new BigDecimal(22.2)));
list.add(new Person("wangwu", 35, new BigDecimal(15.54)));
BigDecimal amounts = list.stream().map(item -> item.getAmount())
.reduce(BigDecimal.ZERO, BigDecimal::add);
amounts = amounts.setScale(1, BigDecimal.ROUND_DOWN);
System.out.println("Total of amounts:" + amounts);
// 或者
BigDecimal sum = list
.stream()
.map(Person::getAmount)
.reduce(BigDecimal::add)
.get();
sum = sum.setScale(1, BigDecimal.ROUND_DOWN);
System.out.println("Total of sums: " + sum);
}
补充知识:Java算法——求1到100累加的和,3种循环
1、for循环
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += i;
}
System.out.println("1到100累加的和为:" + sum);
2、while循环
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i;
i++;
}
System.out.println("1到100累加的和为:" + sum);
3、do...while循环
int sum = 0;
int i = 1;
do {
sum += i;
i++;
} while (i <= 100);
System.out.println("1到100累加的和为:" + sum);
以上这篇Java lambda 循环累加求和代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持亿速云。
-
Java 某个起始时间,固定的累加天数,计算周期
2020-01-07 14:11:56项目中有这么一个业务场景,数据库中某张表有个起始时间,和一个累加时间,比如2020-01-07,往后每次加3天为一个周期,到2020-01-10是周期1,到2020-01-13是周期2,以此类推。通过Java可以直接计算出周期,然后进行...Java 某个起始时间,固定的一个天数相加,计算周期每次加过后的周期
前言
项目中有这么一个业务场景,数据库中某张表有个起始时间,和一个累加时间,比如
2020-01-07
,往后每次加3天为一个周期,到2020-01-10
是周期1,到2020-01-13
是周期2,以此类推。通过Java可以直接计算出周期,然后进行数据库操作。代码
/** * 获取某个日期和当前时间差几天 */ public static Long getDayPassed(Date beginDate) { DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Long days = null; try { Date currentTime = dateFormat.parse(dateFormat.format(new Date()));//现在系统当前时间 long diff = currentTime.getTime() - beginDate.getTime(); days = diff / (1000 * 60 * 60 * 24); } catch (ParseException e) { e.printStackTrace(); } return days; }
传入数据库中数据的起始时间,计算出距离当前时间相差多少天
int differNum = getDayPassed(rankPeriod.getBeginDate()).intValue(); // 拿到数据库中配置的时间间隔 int cycle = rankPeriod.getCircleDay(); int period = Math.floorDiv(differNum, cycle); if (differNum % cycle != 0) { period = period + 2; } else { period = period + 1; }
上面代码的意思就在于,起始时间和当前时间相差多少天,比如
2020-01-07
是当前时间,起始时间是2020-01-02
,相差了5天,数据库配置的间隔天数是2天,通过Math.floorDiv
方法,两个天数相除得到一个整数2,
再取两个数的余数,不为0整除的话加2,最后得出的2020-01-02
到2020-01-07
有3个周期 -
Java累加连乘积_Java实现 蓝桥杯VIP 算法提高 连接乘积
2021-03-14 17:26:44算法提高 连接乘积时间限制:1.0s 内存限制:256.0MB问题描述192这个数很厉害,用它分别乘以1、2、3,会得到:192 x 1 = 192192 x 2 = 384192 x 3 = 576把这三个乘积连起来,得到192384576,正好是一个1~9的全排列...算法提高 连接乘积
时间限制:1.0s 内存限制:256.0MB
问题描述
192这个数很厉害,用它分别乘以1、2、3,会得到:
192 x 1 = 192
192 x 2 = 384
192 x 3 = 576
把这三个乘积连起来,得到192384576,正好是一个1~9的全排列
我们把上面的运算定义为连接乘积:
m x (1 … n) = k(其中m > 0 且 n > 1,对于上例,m = 192、n = 3、k = 192384576)
即k是把m分别乘以1到n的乘积连接起来得到的,则称k为m和n的连接乘积。
按字典序输出所有不同的连接乘积k,满足k是1~9的全排列
输出格式
每个k占一行
样例输出
显然,结果中应包含一行:
192384576
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class 连接乘积 {
public static List list = new ArrayList();
public static void main(String[] args) {
// TODO Auto-generated method stub
char[] chs = {'1','2','3','4','5','6','7','8','9'};
//f(chs,0);
//Collections.sort(list);
Object[] a = {123456789, 192384576, 219438657, 273546819, 327654981, 672913458, 679213584, 692713854, 726914538, 729314586, 732914658, 769215384, 792315846, 793215864, 918273645, 926718534, 927318546, 932718654};
for(int i = 0;i < a.length;i++){
System.out.println(a[i]);
}
}
public static void f(char[] a,int k){
if(k == a.length){
auth(a);
return;
}
for(int i = k;i < a.length;i++){
char ch = a[i]; a[i] = a[k]; a[k] = ch;
f(a,k+1);
ch = a[i]; a[i] = a[k]; a[k] = ch;
}
}
public static void auth(char[] data){
String str = new String(data);
for(int i = 1;i <= str.length();i++){
String t = str.substring(0, i);
int n = Integer.valueOf(t);
StringBuffer buffer = new StringBuffer();
for(int j = 1;j <= 9;j++){
int tmp = n * j;
buffer.append(String.valueOf(tmp));
if(buffer.toString().equals(str) && j > 1){
list.add(Integer.valueOf(buffer.toString()));
break;
}else if(buffer.toString().equals("0") || hasR(buffer.toString())){
break;
}
}
}
}
public static boolean hasR(String str){
char[] chs = str.toCharArray();
Arrays.sort(chs);
for(int i = 0;i < chs.length - 1;i++){
if(chs[i] == chs[i+1])
return true;
}
return false;
}
}
-
java实现两个时间的累加_java List 相邻两个数据累加,可以用stream的collectors.reducing实现么...
2021-03-17 18:29:55聚合操作一般是指 多 -> 一,所以才有我认为是List合并成一个LineDto(甩锅完毕(ノへ ̄、)) 其实呢,这次看需求,其实就是每一个月的count做一个累加,不是最终合并成一个,而是每一个月的count都要做一次修正,因为... -
【Java工具十三】java 把同一天的签到数据放在一起,获取每天的时间差累加
2018-08-23 15:43:04有这样一个需求:用户签到,每天可以签到多次,获取每天签到的最开始和最晚的时间,得到当天的时间差,然后获取这段时间的总共签到时长。 package com.xxx.controller; import com.xxx.utils.DateUtil; import ... -
Java Calendar 类时间操作,代码很简单。 演示了获取时间,日期时间的累加和累减,以及比较。
2015-12-02 09:41:15package MyTest; /* * 演示 Calendar 的一般操作 ...import java.util.Date; import java.text.SimpleDateFormat; import java.text.DateFormat; import java.util.Calendar; public class Test { public Test() { -
JAVA获取数据加1_Java将从键盘输入的数据累加,并显示累加和,直到输入-1为止.
2021-03-11 10:57:16关注:266答案:2mip版解决时间 2021-01-19 18:49提问者習慣邇的習慣2021-01-19 04:22Java将从键盘输入的数据累加,并显示累加和,直到输入-1为止.最佳答案二级知识专家久别无恙2021-01-19 05:19思路:先定义一个sum=0;再... -
Java语言高分悬赏:怎么在strust里面调用页面被浏览了多少时间,注意是总时间,再次打开的话可以累加的
2020-07-07 15:15:00Java语言高分悬赏:怎么在strust里面调用页面被浏览了多少时间,注意是总时间,再次打开的话可以累加的 -
多线程累加lambda几种方法(极客时间Java业务开发常见错误100例)
2020-04-20 17:42:59package com.sixi.erp.coreservice.annotation; import ... import java.util.ArrayList; import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicInteger; imp... -
牛客网时间累加
2019-03-18 17:54:10设计一个程序能计算一个日期加上若干天后是什么日期。(程序没问题 牛客 没过) https://github.com/licunzhi/niuke/blob/master/src/com/sakura/aaaai/Main.java ...import java.time.format.Date... -
java8 stream 做累加_Java8 的这个特性,用起来真的很爽!
2020-12-16 18:08:59选择“设置星标”优质文章,第一时间送达文章转自:占小狼的博客一直在写中间件相关的代码,提供SDK给业务方使用,但很多业务方还一直停留在1.7版本,迟迟不升级,为了兼容性,不敢在代码中使用Java8的一些新特性,... -
JAVA算法:子数组的最大累加和问题
2018-01-21 21:35:06子数组的最大累加和问题 JAVA代码实现 【问题描述】 给定一个一维数组,返回子数组的最大累加和。 例如,arraydemo=[1,-2,3,5,-2,6,-1];所有子数组中,[3,5,-2,6]可以累加出最大的和12,所以返回12。 ... -
Java Calendar 日历类的时间操作 Timestamp Date Calendar 相互转换
2013-07-30 17:53:36Java Calendar 日历类的时间操作,这也许是 Java 环境下创建和管理日历及操作时间最简单的一个方案了,示范代码也很简单。 演示了获取时间,日期时间的累加和累减,以及日期时间的比较。 原文地址:blog.csdn.net/... -
java算法7~求子数组的最大累加和问题
2016-11-28 17:09:03算法要求:时间复杂度o(n),空间o(1),n为数组长度; 算法原理:从左到右遍历数组arr,用遍历cur记录每一步的累加和,当cur 那么累加的这一部分肯定不能作为产生最大累加和的子数组的左边部分,此时令cur=0,... -
Java 使用多线程对超大数列进行累加计算
2019-01-19 16:49:27实验原理:建立一个长为2G (Java中最大长度为2G) 的整形数组,分成n份,然后让n个线程来对每一块进行求和,最后将每一块的各累计起来统计时间。 实验设备:Xeon E5-2600v2 @ 2.2 GHz (20 cores, Hyper-threading ... -
牛客Top200---子数组的最大累加和问题(java)
2021-03-20 09:37:35题目描述 给定一个数组arr,返回子数组的最大累加和 ...时间复杂度为O(n),空间复杂度为O(1) 题解 import java.util.*; public class Solution { /** * max sum of the subarray * @param arr int整型一维数 -
#子数组的最大累加和问题_Java版 @FDDLC
2020-10-16 19:16:32f=discussion 来源:牛客网 给定一个数组arr,返回子数组的最大累加和 例如,arr = [1, -2, 3, 5, -2, 6, -1],所有子数组中,[3, 5, -2, 6]可以累加出最大的和...时间复杂度为O(n)O(n)O(n),空间复杂度为O(1)O(1)O. -
java calendar 类的时间操作_Java Calendar 类的时间操作 | 学步园
2021-03-01 09:01:04演示了获取时间,日期时间的累加和累减。package MyTest;/** 演示 Calendar 的一般操作*/import java.text.SimpleDateFormat;import java.util.Date;import java.util.Calendar;public class Test{public Test(){}pu... -
Java 蓝桥杯 基础练习 数列特征(循环 最大值 最小值 累加)
2020-05-07 12:52:26时间限制:1.0s 内存限制:256.0MB 问题描述 给出n个数,找出这n个数的最大值,最小值,和。 输入格式 第一行为整数n,表示数的个数。 第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。 输出... -
java calendar timem_Java Calendar 类的时间操作
2021-03-08 05:36:05Java Calendar 类时间操作,这也许是创建和管理日历最简单的一个方案,示范代码很简单。演示了获取时间,日期时间的累加和累减,以及比较。 -
java获取网络时间_Java获取网络时间并在jsp网页中显示
2021-02-12 10:31:38实现原理:在页面加载的时候,调用Java方法取得最新的网络时间,然后将此网络时间赋到js的getTime方法中,在getTime方法中对取得的时间做分析和累加操作,最后将结果显示在jsp页面上。第一步,Java获取网络... -
java calendar 设置小时_Java Calendar 类的时间操作
2021-02-12 23:31:20Java Calendar 类时间操作,这也许是创建和管理日历最简单的一个方案,示范代码很简单。演示了获取时间,日期时间的累加和累减,以及比较。 -
左神算法:未排序正数数组中累加和为给定值的最长子数组长度(Java版)
2020-12-18 00:16:55本文提供的方法可以做到时间复杂度为O(N)、额外空间复杂度为O(N)。题解:为了说明解法,先定义s 的概念,s(i)代表子数组arr[0..i]所有元素的累加和。那么子数组arr[j..i(] 0≤j≤i)的累加和为s(i)-s(j-1),因为... -
Java Calendar 类的时间操作
2019-09-16 17:38:04Java Calendar 类时间操作,代码很简单。 演示了获取时间,日期时间的累加和累减。 [java]view plaincopy packageMyTest; /* *演示Calendar的一般操作 */ import... -
java calendar timem_Java Calendar类的时间操作
2021-02-26 10:55:37Java Calendar 类时间操作,这也许是创建日历和管理最简单的一个方案,示范代码很简单,演示了获取时间,日期时间的累加和累减,以及比较。注意事项:Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 ... -
java calendar 设置小时_Java Calendar类的时间操作
2021-03-22 10:49:22Java Calendar 类时间操作,这也许是创建日历和管理最简单的一个方案,示范代码很简单,演示了获取时间,日期时间的累加和累减,以及比较。注意事项:Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 ...