Java的ArrayList和C++的vector很类似,都是很基本的线性数据结构.但是他们的表现却不同. 在工作中碰到一个问题就是,搞不清楚到底传进去的是一个新对象,还是当前对象的引用! 经过实战分析: 在Java的ArrayList.add(e)中,传入的是引用,因此当你传入e以后,再改变e的成员,则ArrayList里的e也同样会改变,因为本身e和ArrayList中的e就是同一个东西. 而C++的vector.push_back(e)则会调用拷贝构造函数,因此当你传入e以后,再改变e的成…
下图是Collection的类继承图 从图中可以看出:Vector.ArrayList.LinkedList这三者都实现了List 接口.所有使用方式也很相似,主要区别在于实现方式的不同,所以对不同的操作具有不同的效率. ArrayList  就是动态数组,是Array的复杂版本,动态的增加和减少元素.当更多的元素加入到ArrayList中时,其大小将会动态地增长. Vector 和ArrayList类似, 区别在于Vector是同步类(synchronized).因此,开销就比ArrayLis…
十一月 02, 2018 7:37:44 下午 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet [springmvc] in context with path [/sb] threw exception [Request processing failed; nested exception is java.lang.IllegalArgumentException:…
在spring + springmvc + mybatis框架中,我们配置接口对外返回json格式,但是报如下错误: 24-Oct-2017 17:42:23.495 严重 [http-nio-8080-exec-6] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [dispatcherServlet] in context with path [] threw excepti…
Java:ArrayList类小记 对 Java 中的 ArrayList类,做一个微不足道的小小小小记 概述 java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素.此类提供一些方法来操作内部存储的元素. ArrayList 中可不断添加元素,其大小也自动增长. ArrayList 是一种变长的集合类,基于定长数组实现. ArrayList 允许空值和重复元素,当往 ArrayList 中添加的元素数量大于其底层数组容量时,其会通过扩容机制重新生成一个更大的数组…
我的车就差一个轮子啦,造好轮子,我就飞上天与太阳肩并肩啦,想想都激动.什么你要自己造轮子,是不是傻,商店里不都是别人造好的吗,又好又方便,只需一点money,你没有money,那你只能做个安静的美男子啦.幸运的是编程世界中的轮子不需要money,今天就来看看如何调用库中的轮子. 今天的内容: 一.修改bug  这篇博客是接着上篇的,没有看的,请点击此出查看:上一篇随笔 现在揭示那个程序的最大的bug:…
File类的文件具有一定的误导性,我们可能会认为它指代的是文件,实际上并非如此.它技能代表一个特定文件的名称,又能代表一个目录下的一组文件的名称.如果它指的是一个文件集,我们就可以对此集合调用list()方法,从而获取一个目录下的所有文件名称.实际上,FilePath是一个更好的名字. 1.目录列表器 这里尝试获取一个目录下的全部文件和部分文件,首先获取目录下所有的文件名称. public static void main(String[] args) { String filePath = "…
thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发.它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的.高效的服务. 1. 概述 Thrift最初由facebook开发,07年四月开放源码,08年5月进入apache孵化器.thrift允许你定义一个…
一.java.util.ArrayList 1.1 ArrayList 继承结构 ArrayList实现了RandomAccess,可以随机访问(其实就是通过数组下标访问):实现了Cloneable,可以拷贝(通过System.arraycopy方法实现):实现了Serializable,可以进行序列化,能被序列化传输. ArrayList非线程安全. 1.2 ArrayList 属性 private static final long serialVersionUID = 8683452581…
package dataStructure; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; import java.io.*; class node { int to, dist; node(int t, int d) { to = t; dist = d; } } public class Graph { public stat…