- 浏览: 67171 次
文章分类
java中 List类及其子类转换成数组
e.g. List中盛放 SomeClass 对象
两个方法
1. toArray() 返回 Object[],无法强制转换成 SomeClass[],Object[]和SomeClass[]均是Object子类,想要转换,就必须对SomeClass[]中每个元素依次转换
2.
含义,先创建一个大小为List容量的SomeClass[],通过toArray(),将里面的对象全部复制到SomeClass[]中,然后用sc指向这个新创建的SomeClass[]
根据java源码
如果看api仍然看不懂,建议看源码,自己学习分析,不要动不动就要google,先自己分析,再来求教他人。
容器存放内容
如果容器中盛放类,数组,存放的实际上是引用,而非值。如果是基本类型,如整型,String等,则为值。
在ArrayList, HashMap中多次犯错
e.g.
语句 1 不能放在 for 外面,debug的时候,发现,HashMap中,存储的是 strs 地址,如果放在外面,则整个过程中,HashMap只有一组 key-value,HashMap 存储的内容一直未变。
3. 增加或删除容器元素
通过遍历容器来增删元素时,要注意修改索引值,根据api,增加或删除后,该元素之后的所有元素都会发生变化,索引值均加1或减1
e.g.
e.g. List中盛放 SomeClass 对象
两个方法
1. toArray() 返回 Object[],无法强制转换成 SomeClass[],Object[]和SomeClass[]均是Object子类,想要转换,就必须对SomeClass[]中每个元素依次转换
Object[] o= new Object[2]; o[0]= "1 "; o[1]= "2 "; String[] ss = new String[2]; ss[0] = (String)o[0]; ss[1] = (String)o[1];
2.
SomeClass[] sc = null; sc = List.toArray(new SomeClass[List.size()]);
含义,先创建一个大小为List容量的SomeClass[],通过toArray(),将里面的对象全部复制到SomeClass[]中,然后用sc指向这个新创建的SomeClass[]
根据java源码
public Object[] toArray(Object a[]){ if(a.length < size) a = (Object[])java.lang.reflect.Array.newInstance( a.getClass().getComponentType(), size); System.arraycopy(elementData,0,a, 0, size); if(a.length > size) a[size] = null; return a; }
如果看api仍然看不懂,建议看源码,自己学习分析,不要动不动就要google,先自己分析,再来求教他人。
容器存放内容
如果容器中盛放类,数组,存放的实际上是引用,而非值。如果是基本类型,如整型,String等,则为值。
在ArrayList, HashMap中多次犯错
e.g.
HashMap<String[], Integer> map = new HashMap<String[], Integer>(); for i ... { String[] strs = new String[3]; 1 map.put(strs, i); }
语句 1 不能放在 for 外面,debug的时候,发现,HashMap中,存储的是 strs 地址,如果放在外面,则整个过程中,HashMap只有一组 key-value,HashMap 存储的内容一直未变。
3. 增加或删除容器元素
通过遍历容器来增删元素时,要注意修改索引值,根据api,增加或删除后,该元素之后的所有元素都会发生变化,索引值均加1或减1
e.g.
for(int i = 0; i < List.size(); i++) { if (some condition) { List.remove(i); i--; } }
发表评论
-
去掉标点
2015-10-28 14:56 0String regPunctuation = "[ ... -
分割多个空格字符
2015-02-14 07:53 0String s = " -8.5521 1 ... -
ResultSet 记录数
2013-05-17 23:58 10641. select count(*) from table; ... -
编程中的相对路径
2013-04-17 19:58 877project中的相对路径,以工程名为相对路径 SAT ... -
移位操作
2013-04-16 19:07 0左移,<< 补0 右移,>> 无符号 ... -
字符串
2013-04-14 16:42 855c++ 中 常量字符串存储在单独额内存区域, ... -
spring+hibernate 声明式事务管理
2013-03-01 21:24 1130之前在使用 spring+hibernate 声明式事务管理时 ... -
hibernate中的映射文件加载路径
2013-03-01 21:13 2659hibernate中,hbm.xml映射文件加载,目前据我所知 ... -
contains(), containsKey(), containsValue(), equals(), hashCode()
2012-12-30 23:10 2307contains(), containsKey(), cont ... -
try中 finally 与 return
2012-12-18 22:59 606try {}里有一个return语句,那么紧跟在这个try后的 ... -
编程时的错误
2012-12-17 11:29 01. 变量,容器需要 归零 e.g 在循环中,某些变量要在 ... -
eclipse debug
2012-12-17 11:22 0hit count 设置执行次数 适合程序中的for循环(设 ... -
编程的不好习惯
2012-12-09 14:54 0编程的不好习惯 1. 关于求最大最小值,不要假设一个可能的最 ... -
web项目开发一定要有lib文件夹
2012-12-07 19:43 1042进行web开发时,在 WebContent --> ... -
嵌套容器 需要测试
2012-12-04 21:08 0嵌套容器, HashMap<Integer, Array ... -
关于hibernate中delete的疑问
2012-12-04 20:23 0现在我的hibernate开发中,关于 delete 操作, ... -
HashMap的读取
2012-12-01 17:25 2359HashMap的读取 调用 entrySet() ... -
json中key must be strings, unquoted错误
2012-12-01 00:14 5135json中key 必须是 string类型,包括JSONObj ... -
java 对象排序
2012-11-21 21:47 0java对象排序,有两种 1. 实现java.lang.Co ... -
设置eclipse工程jvm大小
2012-11-21 16:28 846在eclipse中设置某工程jvm大小,只对该工程有效 修改 ...
相关推荐
Java容器详细解析 Java容器是一种基本的数据结构,用于存储和管理对象。Java容器主要分为两大类:Collection和Map。 Collection Collection是一个独立元素的序列,这些元素都服从一条或多条规则。Collection接口...
在IT领域,Java容器是一个非常重要的概念,尤其对于软件开发者来说,它们是理解和构建高效、可扩展的应用程序的关键。本文将深入探讨Java容器,并结合标签“源码”和“工具”,从源码层面和实用工具角度来分析这些...
### Java容器学习心得详解 在Java编程中,容器(Containers)是存储和操作对象集合的重要工具,主要包括集合(Collections)和映射(Maps)。本文将深入解析Java容器的关键概念、特性以及不同容器类型的应用场景。 ...
这篇博客"JAVA容器对象整理"可能涵盖了关于Java中的不同容器类、接口以及它们的使用方式。在这里,我们将深入探讨一些核心的Java容器知识点。 1. **ArrayList与LinkedList** - `ArrayList`是一个基于数组实现的...
Java 容器详解 Java 容器是 Java 语言中的一种集合类库,主要包括 Collection 和 Map 两种类型。Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。 Collection Collection 是一种集合接口...
Java容器类是Java编程语言中不可或缺的一部分,它们主要用于存储和管理对象。这些类和接口位于`java.util`包中,为开发者提供了灵活的数据结构和数据操作方式。在Java中,容器类主要分为两大类:Collection和Map。 ...
在Java编程中,容器是用于...总之,理解并掌握这些Java容器的特性和效率差异,能够帮助我们在实际开发中做出更合适的选择,提高程序的性能和可维护性。在具体应用时,还需要结合业务需求和性能测试,才能做出最佳决策。
Java 容器的两种基本类型:Collection 和 Map Collection 和 Map 是 Java 中的两种基本容器类型,它们都可以用来存储和管理对象,但它们有着不同的特点和用途。 Collection 是一种聚集对象的容器,每个位置只能...
Java容器讲解PPT,Collection Map(HashMap TreeMap LinkedHashMap) List (ArrayList LinkedList Vector) Set (HashSet TreeSet LinkedHashSet)
Java容器是Java编程中至关重要的一个部分,它们用于存储、管理和操作对象集合。在这个主题下,我们将深入探讨Java中的核心容器类,包括数组、List、Set和Map,以及它们各自的特点和使用场景。 1. **数组**:数组是...
题目摘要:考虑下列的信息系统。出版社需要记录下列书籍和作者的信息: P1: 每一本书有一个title,一个description和一个ISBN number 还有 出版的日期(包括年/月) P2: 每一本书有1个或多个作者。...
### Java容器起源与JSP容器背景解析 #### 容器技术概述 容器技术在现代IT领域扮演着极其重要的角色,特别是在云计算和微服务架构中。本文将深入探讨容器技术的起源,尤其是针对Java环境中JSP容器的发展历程及其...
对于java容器的一些归纳整理,顺着思维导图能方便自己的理解,提高运用能力
JAVA 容器用法详解,关于JAVA容器的详细讲解
Java容器是Java编程中不可或缺的一部分,它们主要用于存储和管理对象,提供了一种高效且灵活的方式来组织和操作数据。本文将简要介绍Java容器的主要概念、API以及常用的容器类。 首先,Java容器分为两大主要类别:...
Java容器类是Java集合框架的重要组成部分,它们提供了一种存储、管理和操作对象的方式。在Java中,容器类包括数组、列表、队列、集、映射等数据结构,它们为开发者提供了灵活的数据处理能力。本篇文章将深入探讨Java...
Java容器是Java编程中一个非常重要的概念,它主要用于管理和组织对象。在Java中,容器可以是集合、框架或服务提供者等,它们为其他对象提供存储、管理以及生命周期控制等功能。容器广泛应用于企业级开发,尤其是在...
后缀为.mmap的思维导图,总结了JAVA容器的常见类
Java容器是Java编程中至关重要的部分,它们是用于存储、管理和操作对象的工具。Java集合框架,包括List、Set、Map、ArrayList、LinkedList等,构成了Java容器的主要元素。以下是对这些概念的详细解释: 1. **集合...
Java容器学习笔记: 容器概览, 容器中的设计模式, 容器源码分析 - List, 容器源码分析 - Map, 容器源码分析 - 并发容 Java是一种面向对象的编程语言,由Sun Microsystems于1995年推出。它是一种跨平台的语言,...