arraylist

Spark学习之路 (六)Spark Transformation和Action[转]

故事扮演 提交于 2020-01-26 18:07:46
Transformation算子 基本的初始化 (1)java static SparkConf conf = null; static JavaSparkContext sc = null; static { conf = new SparkConf(); conf.setMaster("local").setAppName("TestTransformation"); sc = new JavaSparkContext(conf); } (2)scala private val conf: SparkConf = new SparkConf().setAppName("TestTransformation").setMaster("local") private val sparkContext = new SparkContext(conf) map、flatMap、mapParations、mapPartitionsWithIndex map jdk7 map十分容易理解,他是将源JavaRDD的一个一个元素的传入call方法,并经过算法后一个一个的返回从而生成一个新的JavaRDD。 public static void map(){ //String[] names = {"张无忌","赵敏","周芷若"}; List<String> list = Arrays

ArrayList 坑 的引发思考

不羁的心 提交于 2020-01-26 11:11:00
单线程 ArrayList.remove()的坑 public static void main(String[] args) { singleThread(); } public static void singleThread(){ ArrayList<String> list = new ArrayList<String>(); list.add("刘一"); list.add("刘二"); list.add("单点"); list.add("等待"); list.add("饿饿"); Iterator iter = list.iterator(); while(iter.hasNext()){ String str = (String) iter.next(); if(str.equals("单点")){ list.remove(str); } } System.out.println(list.size()); } 上面这段问题代码引发的思考 ,运行报下面异常 org.xxy.rpc.controller.ArrayListDemo Exception in thread "main" java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification

面试-Java集合类

こ雲淡風輕ζ 提交于 2020-01-26 07:27:05
1.Java 容器分为 Collection 和 Map 两大类 Collection List(有顺序的collection,并且可以重复) ArrayList , LinkedList, Vector , Stack Set(不包含重复元素的collection) HashSet,LinkedHashSet,TreeSet Map(一组键和值映射的组合,键不能重复) · HashMap, LinkedHashMap, TreeMap, ConcurrentHashMap,Hashtable 2.ArrayList与 LinkedList 1) ArrayList是基于动态数组的数据结构,内存存放地址连续,查询效率比较高,但插入和删除效率比较低。 2) LinkedList是基于链表的数据结构,不需开辟连续的内存空间,插入和删除操作效率比较高,但是查询效率比较低。 适用场景 : 当需要对数据进行多次访问则选择ArrayList,如果需要对数据进行多次增删改选择LinkedList。 3. ArrayList与 Vector 1) vector方法都是同步,线程安全,而ArrayList不是,因此性能比较好。 2) verctor当元素超过初始化的大小时,会自动将容量翻倍,而ArrayList只能50%,更有利于节约空间。 3) vector可设置增长因子。 适用场景 :

Iterator迭代器remove元素出现**UnsupportedOperationException**异常

无人久伴 提交于 2020-01-26 05:47:49
Iterator迭代器remove元素出现 UnsupportedOperationException 异常 今天在学习迭代器时,发现remove元素时出现 UnsupportedOperationException 异常。查阅别人的博客发现自己犯了一个错误。 由于我的list是有Arrays.asList(“kelly”,“jerry”,“helen”)得到的,这样得到的list跟java.util.arraylist中的list是不一样的。Arrays.asList(“kelly”,“jerry”,“helen”)返回的是Arrays内部的list,而不是java.util.ArrayList。 Arrays的内部类ArrayList和java.util.ArrayList都是继承AbstractList, remove、add等方法AbstractList中是默认throw UnsupportedOperationException而且不作任何操作。java.util.ArrayList重新了这些方法,而Arrays的内部类ArrayList没有重写,所以会抛出异常 。 //AbstractList的源码 public E remove ( int index ) { throw new UnsupportedOperationException ( ) ; }

Java -read from a text file and Add item( string , arrayList) to hashmap

人盡茶涼 提交于 2020-01-26 04:02:18
问题 This is the text file : output1.txt zzz ***Wed Jan 15 10:00:03 +08 2020 a : 20 b : 30 c : 40 zzz ***Wed Jan 15 11:00:03 +08 2020 a : 22 b : 24 c : 25 I am trying to add the date in String and a,b,c as ArrayList into a hash map: Desired output: {zzz ***Wed Jan 15 10:00:03 +08 2020=[a : 20, b : 30, c : 40], zzz ***Wed Jan 15 11:00:03 +08 2020=[a : 22, b : 24, c : 25]} My code: String dateString =""; ArrayList<String> value = new ArrayList<String>(); HashMap<String, ArrayList> result = new

ArrayList 和LinkedList 区别

走远了吗. 提交于 2020-01-26 03:00:37
共同点 1.都是List 的实现类 2.都实现List的所未能实现发方法 区别 1.ArrayList 实现了List 接口,以数组的方法来实现对快速的随机取得对象用比较好 2.LinkedList 采用链表的方式来实现List 接口,因此进行insert和remove的动作效率比较好,适合实现Stack(堆栈)与Queue(队列) 来源: CSDN 作者: JHZ向日葵 链接: https://blog.csdn.net/qq_30423365/article/details/104042830

集合中的那些事

懵懂的女人 提交于 2020-01-25 23:10:58
集合中类默认大小及扩容大小 List 元素是有序的、可重复 ArrayList、Vector默认初始容量为10 Vector:线程安全,但速度慢     底层数据结构是数组结构     加载因子为1:即当 元素个数 超过 容量长度 时,进行扩容     扩容增量:原容量的 1倍       如 Vector的容量为10,一次扩容后是容量为20 ArrayList:线程不安全,查询速度快     底层数据结构是数组结构     扩容增量:原容量的 0.5倍+1       如 ArrayList的容量为10,一次扩容后是容量为16 Set(集) 元素无序的、不可重复。 HashSet:线程不安全,存取速度快      底层实现是一个HashMap(保存数据),实现Set接口      默认初始容量为16(为何是16,见下方对HashMap的描述)      加载因子为0.75:即当 元素个数 超过 容量长度的0.75倍 时,进行扩容      扩容增量:原容量的 1 倍       如 HashSet的容量为16,一次扩容后是容量为32 Map是一个双列集合 HashMap:默认初始容量为16      (为何是16:16是2^4,可以提高查询效率,另外,32=16<<1 -->至于详细的原因可另行分析,或分析源代码)      加载因子为0.75:即当 元素个数 超过 容量长度的0

How to change the background of particular item of ListView programatically Android

断了今生、忘了曾经 提交于 2020-01-25 20:15:32
问题 I am creating a android application in which I am using a ListView on a dialog box. I want to change the background color of item on click and I have done this with the help of setOnItemClickListener .I am storing all selected values in a ListArray. I want to do like if user opens again that diolog box it must show what he has selected already according to data in ListArray. The exact problem is when I moved back to page and leave the dialogue box the list got renew and nothing shows selected

二叉树中和为某一值的路径

怎甘沉沦 提交于 2020-01-25 14:05:14
题目描述:输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 实现语言:Java import java.util.ArrayList; /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { private ArrayList<ArrayList<Integer>> res=new ArrayList<ArrayList<Integer>>(); private ArrayList<Integer> path=new ArrayList<Integer>(); public ArrayList<ArrayList<Integer>> FindPath(TreeNode root,int target) { if(root==null){ return res; } path.add(root.val); if(root.val==target&&root.left=

24.二叉树中和为某一值的路径

99封情书 提交于 2020-01-25 13:40:44
题目描述 输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 题目解答 import java.util.ArrayList; /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { private ArrayList<ArrayList<Integer>> listAll=new ArrayList<>(); private ArrayList<Integer> list=new ArrayList<>(); public ArrayList<ArrayList<Integer>> FindPath(TreeNode root,int target) { if(root==null){ return listAll; } //将根节点加入list list.add(root.val); target-=root.val; //如果target减为0.且root为叶子节点