ContentValues  :是一种存储机制,key-value 特点:key仅仅能是string类型.value:仅仅能是基本类型,不能是对象. 应用:经常使用语往数据库中插入数据 ContentValues values = new ContentValues();     values.put("name", "xh");     values.put("level", 5);      SQLiteDataBase db=helper.…
1. Vector & ArrayList 1)  Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的同步必然要影响性能,因此,ArrayList的性能比Vector好. 2) 当Vector或ArrayList中的元素超过它的初始大小时,Vector会将它的容量翻倍,而ArrayList只增加50%的大小,这样,ArrayList就有利于节约内存空间. 2. Hashtable & HashMap …
http://blog.csdn.net/czh0766/article/details/5260360 昨天看了算法导论对散列表的介绍,今天看了一下Hashtable, HashMap这两个类的源代码,并参考了网上的一些观点,对它们的实现有了大概的理解.原来hashtable里的key-value还是用数组存储的,数组元素是Entry<K,V>类型,同一数组索引下储存的实质是一个Entry链表,Entry中的next值指向下一个Entry.当把key-value放进hashtable时,会根…
一.三者的区别     HashTable HashMap ConcurrentHashMap 底层数据结构 数组+链表 数组+链表 数组+链表 key可为空 否 是 否 value可为空 否 是 否 线程安全 是 否 是 默认初始容量 11 16 16 扩容方式 (oldSize << 1)+1 oldSize << 1 桶的扩容 扩容时间 size超过(容量*负载因子) size超过(容量*负载因子) 桶超数超过(容量*负载因子) hash key.hashCode() (ke…
接着上篇继续更新. /*请尊重作者劳动成果,转载请标明原文链接:*/ /*https://www.cnblogs.com/jpcflyer/p/10759447.html* / 题目一:Hashtable,HashMap,TreeMap有什么区别? 一般回答: Hashtable 是早期 Java 类库提供的一个哈希表实现,本身是同步的,不支持 null 键和值,由于同步导致的性能开销,所以已经很少被推荐使用. HashMap 是应用更加广泛的哈希表实现,行为上大致上与 HashTable 一致…
效果: <?xml version="1.0" encoding="utf-8"?>  <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"      android:layout_width="fill_parent"      android:layout_height="fill_parent"…
 1. HashMap 与 Hashtable继承自不同的类 1) HashMap 继承自AbstractMap,而AbstractMap实现了Map接口 2) Hashtable 继承自Dictionary 2. HashMap可以以null为key,而Hashtable不可以,这点差别源自于两者对于null有不同的处理方式,具体见下面代码: 1) HashMap     (put方法:public V put(K key, V value)) if (key == null) retur…
1.HashMap继承AbstractMap类. Hashtable继承了Dictionary类. 2.HashMap同意有null的键和值.       Hashtable不同意有null的键和值. 3.Hashtable的方法是synchronized的,HashMap不是. Hashtable是线程安全的,HashMap是非线程安全的. 4.HashMap有containsvValue和containsKey方法. Hashtable有contains方法.…
GUI.Button (new Rect(0,0,5,5,"哈哈"); GUILayout.Button ("heheh"); 1.以上代码都是现实一个button 2.不同之处: GUI中须要通过new Rect()指定button的位置,不灵活 GUILayout不须要指定位置,会自己主动确定现实位置,较为灵活.…
Http协议是基于TCP协议的,而TCP协议是一种有连接.可靠的传输协议.假设丢失的话,会重传.所以这种话,就 不会有数据的丢失了. 而Http协议有三种方法.Get,Post,Head方法.可是用的多的仅仅有Get和Post方法, Get方法是将请求參数放在请求头中,所以请求的參数在URL中可见. 而Post方法是将请求參数放在数据部分,所以在URL中不可见,Post相对来说保密. 所以在提交重要信息的时候.用的都是HttpPost方法来实现的,…
同一时候我们也对HashSet和HashMap的核心方法hashcode进行了具体解释,见<探索equals()和hashCode()方法>. 万事俱备,那么以下我们就对基于hash算法的三个集合HashTable,HashSet和HashMap具体解释. 本文文件夹: 1. HashTable和HashMap的差别 2. HashSet和HashMap的差别 3. HashMap,HashSet工作原理 4. HashSet工作原理 5. 常见问题 1. HashTable和HashMap的…
HashTable: 不允许null的key或value, 线程安全 HashMap: 允许一个null的key, 无限的null value, 非线程安全 LinkedHashMap: HashMap的子类, 但是key的顺序与添加时一致, 且复制不会改变顺序 ConcurrentHashMap: 和HashMap无继承关系, 但是功能和HashMap一致, 且线程安全.…
(1)HashSet是set的一个实现类,hashMap是Map的一个实现类,同时hashMap是hashTable的替代品(为什么后面会讲到). (2)HashSet以对象作为元素,而HashMap以(key-value)的一组对象作为元素,且HashSet拒绝接受重复的对象.HashMap可以看作三个视图:key的Set,value的Collection,Entry的Set. 这里HashSet就是其实就是HashMap的一个视图. HashSet内部就是使用Hashmap实现的,和Hash…
(1)HashSet是set的一个实现类,hashMap是Map的一个实现类,同时hashMap是hashTable的替代品(为什么后面会讲到). (2)HashSet以对象作为元素,而HashMap以(key-value)的一组对象作为元素,且HashSet拒绝接受重复的对象.HashMap可以看作三个视图:key的Set,value的Collection,Entry的Set. 这里HashSet就是其实就是HashMap的一个视图. HashSet内部就是使用Hashmap实现的,和Hash…
Hashtable和HashMap类有三个重要的不同之处.第一个不同主要是历史原因.Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现. 也许最重要的不同是Hashtable的方法是同步的,而HashMap的方法不是.这就意味着,虽然你可以不用采取任何特殊的行为就可以在一个多线程的应用程序中用一个Hashtable,但你必须同样地为一个HashMap提供外同步.一个方便的方法就是利用Collections类的静态的synchroni…
关于vector,ArrayList,hashMap和hashtable之间的区别 vector和ArrayList:  线程方面:  vector是旧的,是线程安全的  ArrayList是java2之后才有的,是非线程安全的  所以在多线程的情况下,最好使用vector,因为其线程安全,在只有一个线程的情况下最好使用ArrayList,由于它是非线程安全的,所以效率更高.  数据增长方面:  vector和ArrayList都可以在初始化的时候设置其初始值,在超过初始值之后,vector默认…
首先,我们要知道set是利使用map是实现的,因为只要利用map中的key唯一性就行了. 1.hashmap 和hashtable的区别是什么? 我们可以背出:  hashtable线程安全.hashmap不安全.                         hashmap中key 和value可以为空,当然根据唯一性,只能有一个key为null;                        还有呢,hash函数不同下面再谈) 2.我们在知识点回顾中,对于一个hash函数,有哪些方法,如何…
1.Map体系参考:http://java.chinaitlab.com/line/914247.htmlHashtable是JDK 5之前Map唯一线程安全的内置实现(Collections.synchronizedMap不算).Hashtable继承的是Dictionary(Hashtable是其唯一公开的子类),并不继承AbstractMap或者HashMap.尽管Hashtable和HashMap的结构非常类似,但是他们之间并没有多大联系.ConcurrentHashMap是HashMa…
Both the HashMap and Hashtable implement the interface java.util.Map but there are some slight differences which has to be known to write a much efficient code. The Most important difference between HashMap and the Hashtable is that Hashtable is sync…
REF: http://blog.csdn.net/fightforyourdream/article/details/15333405 题目是一道简单的小程序,像下面这样:[java] view plaincopypublic class Test1 {   public static void main(String args[]) {    String s = new String("Hello");    System.out.println(s);      foo(s);…
Hashtable: 1. key和value都不许有null值 2. 使用enumeration遍历 3. 同步的,每次只有一个线程能够访问 4. 在java中Hashtable是H大写,t小写,而HashMap是H大写,M大写 HashMap: 1. key和value可以有null值 2. 使用iterator遍历 3. 未同步的,多线程场合要手动同步HashMap HashSet 1. 底层调用HashMap 2. 不允许有重复值 常用Java操作:          hm.contai…
Map是通过键值对来唯一标识的,所以不能重复 存相同键值对 Hashtable存的是键值对 Hashtable<key,value> key,value 都不能为null 方法get(); put(); Hashtable<Student,Integer> ht = new Hashtable<Student,Integer>(); ht.put(new Student("s1",10),10); //int自动装箱 Integer ht.put(n…
java为数据结构中的映射定义了一个接口java.util.Map,而HashMap Hashtable和TreeMap就是它的实现类.Map是将键映射到值的对象,一个映射不能包含重复的键:每个键最多只能映射一个一个值. Hashmap 是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度.HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap…
主要是安全.速度: 1.HashMap可以接受null的键. 2.HashMap是非synchronized,而Hashtable是synchronized,这意味着Hashtable是线程安全的,多个线程可以共享一个Hashtable:而如果没有正确的同步的话,多个线程是不能共享HashMap的.Java 5提供了ConcurrentHashMap,它是HashTable的替代,比HashTable的扩展性更好. 3.由于Hashtable在单线程环境下它比HashMap要慢. 3.另一个区别…
都实现了Map接口,存储的内容是基于key-value的键值对映射,一个映射不能有重复的键,一个键最多只能映射一个值. 1.初始化的时候:HashTable在不指定容量的情况下的默认容量是11,且不要求底层数组的容量一定要为2的整数次幂:HashMap默认的容量为16,且要求容量一定为2的整数次幂. 2.HashTable,HashMap具有无须特性.TreeMap是利用红黑树实现的,实现了SortMap接口,能够根据保存的键的记录进行排序.所以需要使用排序则选择TreeMap,默认为升序排序,…
一.原理 Hashtable 底层数组+链表实现,无论key还是value都不能为null,线程安全,实现线程安全的方式是在修改数据时锁住整个HashTable,效率低,ConcurrentHashMap做了相关优化: 初始size为11,扩容:newsize = olesize*2+1: HashMap 底层数组+链表实现,可以存储null键和null值,线程不安全: 初始size为16,扩容:newsize = oldsize*2,size一定为2的n次幂: 扩容针对整个Map,每次扩容时,…
HashTable 内部数据结构是数组+链表,键值对不允许为null,线程安全,但是锁是整表锁,性能较差/效率低 HashMap 结构同HashTable,键值对允许为null,线程不安全, 默认初始大小为16(固定为2的幂次方), 默认扩容阀值为0.75,扩容方式为,先插入再扩容,所以会产生无效扩容, 单个链表长度默认为8,当超过时链表自动转为红黑树结构,当树结构长度小于6时,重新转为链表 ConcurrentHashMap jdk1.5之后对HashTable的升级版,性能效率各方面都有巨大…
window7根据系统.program files(x86) 它是应用程序目录,在64下位系统.为了更好的相容性32位程序,在一些安装32位程序(请注意,有些节目自己是32位),将默认被安装program files(x86)此目录.一些64位程序,或在节目本身的比特数没有差别.将默认被安装program files此目录.…
String.Empty 字段 .NET Framework 类库 表示空字符串.此字段为仅仅读.命名空间:System 程序集:mscorlib(在 mscorlib.dll 中) protected string loginId = String.Empty; protected string loginId = ""; string.Empty 不分配存储空间 "" 分配一个长度为空的存储空间 所以一般用string.Empty 为了以后跨平台,还是用stri…
Android平台提供给我们一个数据库辅助类来创建或打开数据库,这个辅助类继承自SQLiteOpenHelper类.在该类的构造器中,调用Context中的方法创建并打开一个指定名称的数据库对象.继承和扩展SQLiteOpenHelper类主要做的工作就是重写下面两个 方法. public class MySQLiteHelper extends SQLiteOpenHelper { public MySQLiteHelper(Context context, String name, Curs…