精华内容
下载资源
问答
  • importjava.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;

    }

    }

    }

    展开全文
  • Java 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 循环累加求和代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持亿速云。

    展开全文
  • 项目中有这么一个业务场景,数据库中某张表有个起始时间,和一个累加时间,比如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-022020-01-07有3个周期

    展开全文
  • 算法提高 连接乘积时间限制: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;

    }

    }

    展开全文
  • 聚合操作一般是指 多 -> 一,所以才有我认为是List合并成一个LineDto(甩锅完毕(ノへ ̄、)) 其实呢,这次看需求,其实就是每一个月的count做一个累加,不是最终合并成一个,而是每一个月的count都要做一次修正,因为...
  • 有这样一个需求:用户签到,每天可以签到多次,获取每天签到的最开始和最晚的时间,得到当天的时间差,然后获取这段时间的总共签到时长。 package com.xxx.controller; import com.xxx.utils.DateUtil; import ...
  • package MyTest; /* * 演示 Calendar 的一般操作 ...import java.util.Date; import java.text.SimpleDateFormat; import java.text.DateFormat; import java.util.Calendar; public class Test { public Test() {
  • 关注:266答案:2mip版解决时间 2021-01-19 18:49提问者習慣邇的習慣2021-01-19 04:22Java将从键盘输入的数据累加,并显示累加和,直到输入-1为止.最佳答案二级知识专家久别无恙2021-01-19 05:19思路:先定义一个sum=0;再...
  • Java语言高分悬赏:怎么在strust里面调用页面被浏览了多少时间,注意是总时间,再次打开的话可以累加
  • package 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...
  • 选择“设置星标”优质文章,第一时间送达文章转自:占小狼的博客一直在写中间件相关的代码,提供SDK给业务方使用,但很多业务方还一直停留在1.7版本,迟迟不升级,为了兼容性,不敢在代码中使用Java8的一些新特性,...
  • 子数组的最大累加和问题 JAVA代码实现 【问题描述】 给定一个一维数组,返回子数组的最大累加和。 例如,arraydemo=[1,-2,3,5,-2,6,-1];所有子数组中,[3,5,-2,6]可以累加出最大的和12,所以返回12。 ...
  • Java Calendar 日历类的时间操作,这也许是 Java 环境下创建和管理日历及操作时间最简单的一个方案了,示范代码也很简单。 演示了获取时间,日期时间累加和累减,以及日期时间的比较。 原文地址:blog.csdn.net/...
  • 算法要求:时间复杂度o(n),空间o(1),n为数组长度; 算法原理:从左到右遍历数组arr,用遍历cur记录每一步的累加和,当cur  那么累加的这一部分肯定不能作为产生最大累加和的子数组的左边部分,此时令cur=0,...
  • 实验原理:建立一个长为2G (Java中最大长度为2G) 的整形数组,分成n份,然后让n个线程来对每一块进行求和,最后将每一块的各累计起来统计时间。 实验设备:Xeon E5-2600v2 @ 2.2 GHz (20 cores, Hyper-threading ...
  • 题目描述 给定一个数组arr,返回子数组的最大累加和 ...时间复杂度为O(n),空间复杂度为O(1) 题解 import java.util.*; public class Solution { /** * max sum of the subarray * @param arr int整型一维数
  • f=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.
  • 演示了获取时间,日期时间累加和累减。package MyTest;/** 演示 Calendar 的一般操作*/import java.text.SimpleDateFormat;import java.util.Date;import java.util.Calendar;public class Test{public Test(){}pu...
  • 时间限制:1.0s 内存限制:256.0MB 问题描述 给出n个数,找出这n个数的最大值,最小值,和。 输入格式    第一行为整数n,表示数的个数。    第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。 输出...
  • Java Calendar 类时间操作,这也许是创建和管理日历最简单的一个方案,示范代码很简单。演示了获取时间,日期时间累加和累减,以及比较。
  • 实现原理:在页面加载的时候,调用Java方法取得最新的网络时间,然后将此网络时间赋到js的getTime方法中,在getTime方法中对取得的时间做分析和累加操作,最后将结果显示在jsp页面上。第一步,Java获取网络...
  • Java Calendar 类时间操作,这也许是创建和管理日历最简单的一个方案,示范代码很简单。演示了获取时间,日期时间累加和累减,以及比较。
  • 本文提供的方法可以做到时间复杂度为O(N)、额外空间复杂度为O(N)。题解:为了说明解法,先定义s 的概念,s(i)代表子数组arr[0..i]所有元素的累加和。那么子数组arr[j..i(] 0≤j≤i)的累加和为s(i)-s(j-1),因为...
  • Java Calendar 类时间操作,代码很简单。 演示了获取时间,日期时间累加和累减。 [java]view plaincopy packageMyTest; /* *演示Calendar的一般操作 */ import...
  • Java Calendar 类时间操作,这也许是创建日历和管理最简单的一个方案,示范代码很简单,演示了获取时间,日期时间累加和累减,以及比较。注意事项:Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 ...
  • Java Calendar 类时间操作,这也许是创建日历和管理最简单的一个方案,示范代码很简单,演示了获取时间,日期时间累加和累减,以及比较。注意事项:Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 ...

空空如也

空空如也

1 2 3 4 5 ... 14
收藏数 273
精华内容 109
关键字:

java时间累加

java 订阅