java list 连续n个点大于某个值

package com.pr.cms.controller;

import java.util.ArrayList;
import java.util.List;

public class test {

public static void main(String[] args){

List<Integer> list = new ArrayList<>();
        list.add(7);
        list.add(8);
        list.add(19);
        list.add(20);
        list.add(21);
        list.add(-21);
        list.add(25);

int  m = 0;
        int i = 0;

//连续在同一侧
        List<Integer> subList = new ArrayList<>();
        for (int j = 0; j < list.size(); j++) {
            Integer tmpv = list.get(j);
            if (tmpv > m) {
                if (subList != null&& subList.size() > 0) {
                    Integer integer = subList.get(subList.size() - 1);
                    if (tmpv -integer > 0) {
                        subList.add(tmpv);
                        i+=1;
                    }else{
                        subList.remove(0);
                        subList.add(tmpv);
                    }
                }else{
                    i+=1;
                    subList.add(tmpv);
                }
            }else{
                i = 0;
                subList.clear();
            }
            if (i == 3) {
                System.out.println(subList.toString());
                subList.clear();
                i = 0;
            }

}
    }

}

时间: 2024-10-06 20:37:07

java list 连续n个点大于某个值的相关文章

java.io.IOException: ORA-22920: 未锁定含有 LOB 值的行

究其原因是因为没有锁定要更新的行记录.将 mysql="select filebody from filelist where filename=?"中的SQL语句加上 for update即可.如:mysql="select filebody from filelist where filename=? for update". 昨天测weblogic试连接池情况,多次刷新,连接不释放,然后查代码,连接的地方都在finally里边关掉了啊,还是不释放,突然想起sq

#有如下值集合[11,22,33,44,55,66,77,88,99,90...],将所有大于66值保存至字典的一个key中,将小于66的值保存至大二个key的值

1 #!/usr/bin/env python 2 #有如下值集合[11,22,33,44,55,66,77,88,99,90...],将所有大于66值保存至字典的一个key中,将小于66的值保存至大二个key的值 3 4 li = [11,22,33,44,55,66,77,88,99,90] 5 person = {">66":[],"<=66":[]} 6 for i,j in enumerate(li,0) : 7 8 if int(j) >

java多线程之从任务中获取返回值

package wzh.test; import java.util.ArrayList; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; class TaskWithResult implements Callable<Strin

java.lang.reflect操作对象属性(域)的值

import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; /*2015-10-28*/ public class RefactorDemo { /** * @param args * @throws NoSuchFieldException * @throws SecurityException * @throws Ill

17 Java语言基础long与float的取值范围谁大谁小

结论 float的取值范围比long大 验证 1 public class Test1_DataTypeConversion { 2 3 public static void main(String[] args) { 4 5 float f = 1.3f; 6 long l = 34; 7 // l = f; 8 // System.out.println(l); 9 //Type mismatch: cannot convert from float to long 10 f = l; 11

jni中调用java方法获取当前apk的签名文件md5值

相应的java方法: void getsign(Context context) throws Exception { PackageInfo localPackageInfo = context.getPackageManager() .getPackageInfo(context.getPackageName(), 64); StringBuilder localStringBuilder = new StringBuilder(); Signature[] arrayOfSignature

Java常用的设计模式10:设计模式之 值对象

1. 场景和问题: 在Java程序中,需要在对象之间交互大量的数据,比如要为方法传入参数,也要获取方法的返回值,请问如何能更好的进行数据的交互? 2. 解决方案:      值对象 3. 值对象的本质:  封装数据

[转]java基本类型(内置类型)取值范围

原文地址:java求职重点归纳(8)--基本类型(内置类型)例作者:smallcat 例1: public class PrimitiveTypeTest { public static void main(String[] args) { // byte System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE); System.out.println("包装类:java.lang.Byte"); System.out.p

Java中怎样由枚举常量的ordinal值获得枚举常量对象

Java1.5提供了关键字enum,能够通过该关键字方便得定义自己须要的枚举类型,比方 enum Season { SPRING, SUMMER, AUTUMN, WINTER } 就定义了一个季节枚举类型. 在本例中,对于Season.SPRING这个对象,Season.SPRING.name()能够得到该对象的字符串,即"SPRING":反之,由Season.valueOf("SPRING")则能够得到该对象,即Season.SPRING.也就是说,使用name