`
JinLoveJava
  • 浏览: 23078 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
List,Set是,Map不是
List 以特定次序来持有元素,可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value值,value可多值。
ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。 LinkedList也是线程不安全的,LinkedList提供了一些方法,使得LinkedList可以被当作堆栈和队列来使用。
Vector newVector =new Vector(); For (inti=0;i<vector.size();i++) { Object obj =vector.get(i); if(!newVector.contains(obj); newVector.add(obj); } 还有一种简单的方式:HashSet set = new HashSet(vector);
Set里的元素是不能重复的,元素重复与否是使用equals()方法进行判断的。 equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值。
对。 如果对象要保存在HashSet或HashMap中,它们的equals相等,那么,它们的hashcode值就必须相等。 如果不是要保存在HashSet或HashMap,则与hashcode没有什么关系了,这时候hashcode不等是可以的,例如arrayList存储的对象就不用实现hashcode,当然,我们没有理由不实现,通常都会去实现的。
public class Test{           public static void main(String[] args){             short s1=1;              s1+=1;              System.out.println("s1="+s1);             short s2=1;             s2=+1;             System.out.println("s2="+s2);            short s3=1;          ...
一、常用JDBC API 在java.sql包中包含体现JDBC基本功能的若干接口和类: 1.Driver 接口:代表驱动程序 2.DriverManager 类:驱动程序管理员 3.Connection 接口:代表数据库连接 4.Statement 、PreparedStatement、CallableStatement 接口:代表数据库操作对象 5.ResultSet 接口:代表结果集 6.DatabaseMetadata、ResultSetMetadata接口:代表元数据 7.Types 类:代表JDBC类型 ++++++++++++++++++++++ ...
01.package SecondStep;  02.  03.import java.sql.*;  04.  05./** 06. *  07. * 处理事务transaction 同时执行了批处理 addBatch 和 08. *  09. */  10.public class GeDemo6 {  11.    public static void main(String[] args) {  12.        Connection connection = null;  13.        Statement statement = null;  14 ...
HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,在只有一个线程访问的情况下,效率要高于Hashtable。
这两个类都实现了List接口,List接口继承了Collection接口,他们都是有序集合.即存储在这两个集合中的元素的位置都是由顺序的,相当于一种动态的数组,我们以后可以按位置索引号来取出某个元素,并且其中的数据是允许重复的.这是HashSet之类的集合的最大不同处,HashSet之类的集合不可以按索引号去检索其中的元素.也不允许有重复的元素.本题目本与hashset没有任何关系,但为了说清楚ArrayList和Vector的功能,我们使用对比方式,有利于说明问题. 接着才说ArrayList与Vector的区别,主要包括两个方面: (1)同步性 Vector是线程安全的,也就是说它的方 ...
Comparable/comparator
package lianxii; public class ReferenceType {     private int day   = 12;     private int month = 6;     private int year  = 1900;     public ReferenceType(int d, int m, int y) {         year = y;         month = m;         day = d;     }     public void display() {         System.out.println(y ...
Collection是集合框架,集合框架(Collection Framework)泛指java.util包的若干个类和接口.如Collection,List,ArrayList,LinkedList,Vector(自动增长数组),HashSet,HashMap等。 集合框架中的类主要封装的是典型的数据结构,如动态数组,链表,堆栈,集合,哈希表等。 集合框架类似编程中经常用到的工具类,使得编码这专注于业务层的实现,不需要从底层实现相关细节—“数据结构的封装”和”典型算法的实现”。 Collection是集合类的上级接口,继承与他的接口主要有set和list。 Collections是针对 ...
package lianxii; class OneT {     private final int a = 1;     public int geta(int b) {//int b为形参         return a * b;//跟返回也有关     }     public static void main(String[] args) {         int ii = 2;         OneT p = new OneT();         int pp = p.geta(ii);//ii为实参         System.out.println(pp); ...
Global site tag (gtag.js) - Google Analytics