Java subList的使用】的更多相关文章

在java中,我们有时候需要对一个list进行拆分处理,这个时候就需要用到list的切割方法subList. 我们知道list里面的序号起始是从0开始的,所以一个含有23条数据的list,它的序号是从0-22. 如果我们想截取出这个list中的前十条的话,那么subList的起始位置和结束位置应该是subList(1, 10): 而不是根据list的序号0-9来窃取. 所以subList的起始位置是从1开始,对应list里面的序号0.…
1. ArrayList的subList 结果不可以强转成ArrayList,否则抛出ClassCastException异常,原因是subList返回的是ArrayList的内部类SubList,并不是ArrayList,而是ArrayList的一个视图.举例 public class SublistTest { public static void main(String[] args) { ArrayList<Integer> myList = new ArrayList<Inte…
1. 在看<阿里巴巴java编程手册的时候>有如下强制约束 顺便学了一下subList. java.util.List中有一个subList方法,用来返回一个list的一部分的视图. List<E> subList(int fromIndex, int toIndex); 它返回原来list的从[fromIndex, toIndex)之间这一部分的视图,之所以说是视图,是因为实际上,返回的list是靠原来的list支持的. 所以,你对原来的list和返回的list做的“非结构性修改…
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /** * 需求:计算网页访问量前三名 * 用户:喜欢视频 直播 * 帮助企业做经营和决策 * * 看数据 */ object UrlCount { def main(args: Array[String]): Unit = { //1.加载数据 val conf:SparkConf = new Spa…
今天,维护以前的代码,看到了List.subList这个方法,以前没接触过,对这个就是个小白,今天学习下: java.util.List中有一个subList方法,用来返回一个list的一部分的视图. 它返回原来list的从[fromIndex, toIndex)之间这一部分的视图,之所以说是视图,是因为实际上,返回的list是靠原来的list支持的. 所以,你对原来的list和返回的list做的"非结构性修改"(non-structural changes),都会影响到彼此对方. 所…
我们经常使用subString方法来对String对象进行分割处理,同时我们也可以使用subList.subMap.subSet来对List.Map.Set进行分割处理,但是这个分割存在某些瑕疵. 一.subList返回仅仅只是一个视图 首先我们先看如下实例: public static void main(String[] args) { List<Integer> list1 = new ArrayList<Integer>(); list1.add(1); list1.add…
JDK中,List接口有一个实例方法List<E> subList(int fromIndex, int toIndex), 其作用是返回一个以fromIndex为起始索引(包含),以toIndex为终止索引(不包含)的子列表(List). 但值得注意的是,返回的这个子列表的幕后其实还是原列表: 也就是说,修改这个子列表,将导致原列表也发生改变:反之亦然. 下面是一段实例代码: import java.util.ArrayList; import java.util.List; public …
java中有一个返回子列表的方法: public list<E> subList(int fromIndex, int toIndex){       subListRangeCheck(fromIndex, toIndex,size);       return new SubList(this , 0, fromIndex, toIndex); } 返回一个fromIndex为起点,toIndex为终点(不包含终点)的子列表.从上实现代码中可以看到,先检查一下单签的fromIndex和to…
Exception in thread "main" java.lang.StackOverflowError at java.util.ArrayList$SubList.rangeCheckForAdd(Unknown Source) package com.test; import java.util.ArrayList; import java.util.List; public class TEST { public static void main(String[] arg…
ArrayList 中 subList 的基本用法: subList(fromIndex:int,toIndex:int):List<E> 返回从fromIndex到toindex-1 的 子列表 在使用集合中,可能常常需要取集合中的某一部分子集来进行一下操作,于是subList这个方法就映入我们的眼帘,毫不犹豫地使用. 例如以下代码: public static void main(final String[] args) { List<Object> lists = new A…
java.util.List中有一个subList方法,用来返回一个list的一部分视图. List<E> subList(int fromIndex, int toIndex); 它返回原来list的从[fromIndex, toIndex)之间这一部分的视图,之所以说是视图,是因为实际上,返回的list是靠原来的list支持的.返回一个以fromIndex为起始索引(包含),以toIndex为终止索引(不包含)的子列表. 但值得注意的是,返回的这个子列表的幕后其实还是原列表:也就是说,修改…
一点一点看JDK源码(五)java.util.ArrayList 后篇之SubList liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) SubList可以将一个数组根据index拆分为多个数组,使用多线程对于数组进行遍历 未使用多线程的代码比较简单,代码示例如下: package com.FM.ArrayListStudy; import java.util.ArrayList; import java.util.List; publ…
java.util.List中有一个subList方法,用来返回一个List的一部分的视图. List<E> subList(int fromIndex, int toIndex); 它返回原来list的从(fromIndex, toIndex)之间这一部分的视图,之所以说是视图,是因为实际上,返回的list是靠原来的List支持的.返回一个以fromIndex为起始索引(包含),以toIndex为终止索引(不包含)的子列表(List). 但值得注意的是,返回的这个子列表的幕后其实还是原列表:…
ClassNotFoundException: java.util.ArrayList$SubListjava.lang.RuntimeException: java.lang.ClassNotFoundException: java.util.ArrayList$SubList    com.jd.jsf.gd.util.ClassTypeUtils.getClass(ClassTypeUtils.java:85)    com.jd.jsf.gd.codec.msgpack.Invocati…
1. 使用Arrays.asList的注意事项 1.1 可能会踩的坑 先来看下Arrays.asList的使用: List<Integer> statusList = Arrays.asList(1, 2); System.out.println(statusList); System.out.println(statusList.contains(1));System.out.println(statusList.contains(3)); 输出结果如下图所示: 然后,往statusList…
比如集合中的内容为1,2,3,4,5list.sublist(2,4)就返回一个子集合:它的内容包括从下标为2到下标为4,而且这是左闭右开的就是说是从大于等于2到小于4那子集内容就是3,4(集合的下标都是从0开始) public static void main(String[] args) { List list = new ArrayList(); for (int i = 1; i <= 5; i++) { list.add(i); } System.out.println(list);…
上一章说了很多ArrayList相关的内容,但还有一块儿内容没说到,那就是subList方法.先看一段代码 public static void testSubList() { List<String> stringList = new ArrayList<>(); stringList.add("牛魔王"); stringList.add("蛟魔王"); stringList.add("鹏魔王"); stringList…
/** * 自定义List分页工具 * @author hanwl */ public class PageUtil { /** * 开始分页 * @param list * @param pageNum 页码 * @param pageSize 每页多少条数据 * @return */ public static List startPage(List list, Integer pageNum, Integer pageSize) { if (list == null) { return n…
list中的contains:是否包含指定元素 list中的SubList:  返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之间的部分视图. List<String> addlist = new ArrayList<String>(); addlist.add("hello"); addlist.add(0, "hi"); addlist.add("world"); addlist.add(&…
List<E> subList(int fromIndex, int toIndex); 它返回原来list的从[fromIndex, toIndex)之间这一部分的视图,之所以说是视图,是因为实际上,返回的list是靠原来的list支持的. 所以,你对原来的list和返回的list做的"非结构性修改"(non-structural changes),都会影响到彼此对方. 所谓的"非结构性修改",是指不涉及到list的大小改变的修改.相反,结构性修改,指…
一.Java 集合框架 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个层次. 实现(类):是集合接口的具体实现.从本质上讲,它们是可重复使用的数据结构. 算法:是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序.这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现. 集合接口 序号 name 接口描述 1 Collection Col…
20170104问题解析请点击今日问题下方的"[Java每日一题]20170105"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; import java.util.ArrayList; import java.util.List; public class Ques0105 { public static void main(String[] args) { List<String> list = new ArrayList…
Java列表踩过的坑 其中subList是RandomAccessSubList,不是序列化的列表,不可以加入tair. 加入tair测试代码 @Autowired private CacheManager cacheManager; @Test public void listTest() { ArrayList arrayList = new ArrayList(); arrayList.add(1); arrayList.add(2); arrayList.add(3); arrayLis…
一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(String[] args) { 4 List list = new ArrayList(); 5 list.add("qqyumidi"); 6 list.add("corn"); 7 list.add(100); 8 9 for (int i = 0; i < lis…
对于集合框架,是非常重要的知识,是程序员必须要知道的知识点. 但是我们为什么要引入集合框架呢? 我们之前用过数组存储数据,但是采用数组存储存在了很多的缺陷.而现在我们引用了集合框架,可以完全弥补了数组的缺陷.它灵活,使用,提高软件的开发效率.并且不同的集合适用于不同的场合. 集合框架的好处: 1.容量自增长: 2. 提供有用的数据结构和算法,从而减少编程工作: 3. 提高了程序速度和质量,因为它提供了高性能的数据结构和算法: 4. 允许不同 API 之间的互操作,API之间可以来回传递集合: 5…
Java作为面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储.但是使用数组存储对象方面具有一些弊端,而Java 集合就像一种容器,可以动态地把多个对象的引用放入容器中. Java 集合类可以用于存储数量不等的多个对象,可以将它简单地看作是一个"可变长度的Object数组".Java 集合可分为 Collection 和 Map 两种体系: 1. Collection接口:表示不按添加顺序存放对象的集合,集合内元素可以重复,即"无序可重复&…
近期在实现项目接口时,经常需要分页功能.有时返回“String”,有时是“Object”格式的分页List.针对这种情况,本人用java实现对List分页. 第一版 package org.sun.java; import java.util.ArrayList; import java.util.List; /** * * @author Administrator * @date 2016年7月16日 */ public class SubListOperation { final stat…
1.用代码说话 package JavaProject; import java.util.*; public class A{ public static void main(String[]args){ List<String> list=new ArrayList<String>(Arrays.asList("ab","cd","ef","gh")); /** *list.add(param1),…
一.集合类介绍 1.List(元素有放入顺序,可重复) 1.1.List的实现 1.1.1.ArrayList ArrayList就是动态数组(需要连续的存储空间),用MSDN中的说法,就是Array的复杂版本,它提供了动态的增加和减少元素,实现了Collection和List接口,灵活的设置数组的大小等好处.在指定位置的查找效率较高,是非线程安全的. public class Test { public static void main(String arg[]) { /** * ArrayL…
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package controller.groupbuying.navigate; /** * * @author fee * @date 2011-03-31 12:39:07 * @copyright 广州互动生活网络科技有限公司 */ import java.util.ArrayList; impor…