国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

對Java 提供的兩個Map 進行了性能測試

2019-11-18 13:12:47
字體:
來源:轉載
供稿:網友

  對java 提供的兩個Map 進行了性能測試發現效果還可以10萬個key的Map 查找 起來也不是很慢,大概50--60毫秒
  
  還打算自己手工做些性能優化,將不同前綴的KEY分開到幾個小MAP里 發現性能沒有改觀,納悶中。。
  
  分開到幾個小MAP里,然后小的里面還可以再分,分分分,形成一個按字母檢索樹
  
  忽然想起,Java PRo 上有篇文章里說過Map系列的內置 性能優化方式,好象就是和我說的這種思想是一致的
  
  查找資料一看(http://www.fawcette.com/china/xmlFile.aspx?ID=8&page=1),過真如此,哈哈,不過上次看了印象不深刻,這次自己想出來了,印象當真深刻的很,同時也證實了英雄所見略同(呵呵)
  
  /**
  * Map 系列性能測試
  */
  import java.util.*;
  public class MapTest
  {
  public static void main(String ags[]){
  test2();
  System.out.println("-----");
  test1();
  }
  public static void test1(){
  Map m = new HashMap();
  long t0 = System.currentTimeMillis();
  for (int i = 0; i < 99999 ; i++)
  {
  m.put("aa.bb.to.pub."+i+"12345asfsdfVO",i+"value");
  }
  long t1 = System.currentTimeMillis() ;
  System.out.println(t1-t0);;
  //System.out.println(m.get("8888key"));
  for (int i = 0; i < 99999 ; i++)
  {
  m.get("aa.bb.to.pub."+i+"12345asfsdfVO");
  }
  long t2 = System.currentTimeMillis() ;
  System.out.println(t2-t1);
  
  }
  public static void test2(){
  Map m = new HashMap();
  m.put("aa.bb.ao",new HashMap());
  m.put("aa.bb.do",new HashMap());
  m.put("aa.bb.wo",new HashMap());
  m.put("aa.bb.po",new HashMap());
  m.put("aa.bb.io",new HashMap());
  m.put("aa.bb.oo",new HashMap());
  m.put("aa.bb.bo",new HashMap());
  m.put("aa.bb.to",new HashMap());
  m.put("aa.bb.yo",new HashMap());
  m.put("aa.bb.ro",new HashMap());
  long t0 = System.currentTimeMillis();
  for (int i = 10; i < 20 ; i++)
  {
  for (int k = 1; k < 5 ; k++) //有10個模塊,比較5個模塊概率
  if("aa.bb.to.pub.12345headerVO".startsWith("aa.bb.to"));
  //下面假設上邊比較結果為: aa.bb.to開頭
  for(int j = 1000; j < 2000; j++) //每個模塊里有1000個
  ((Map)m.get("aa.bb.to")).put("aa.bb.to.pub."+j+"12345asfsdfVO","value");
  }
  long t1 = System.currentTimeMillis() ;
  System.out.println("錄入時間為:"+(t1-t0));;
  //System.out.println(m.get("8888key"));
  for (int i = 10; i < 20 ; i++)
  {
  for (int k = 1; k < 5 ; k++) //有10個模塊,比較5個模塊概率
  if("aa.bb.to.pub.12345asfsdfVO".startsWith("aa.bb.to"));
  
  for(int j = 1000; j < 2000; j++)
  ((Map)m.get("aa.bb.to")).get("aa.bb.to.pub."+j+"12345asfsdfVO");
  }
  long t2 = System.currentTimeMillis() ;
  System.out.println("查找時間為:"+(t2-t1));
  
  }
  };

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台中县| 田林县| 平昌县| 武平县| 呼图壁县| 杭锦旗| 石屏县| 新宾| 白城市| 武胜县| 西畴县| 高唐县| 都昌县| 广东省| 公安县| 永新县| 陈巴尔虎旗| 台中市| 荔浦县| 鹰潭市| 湘潭县| 永济市| 齐河县| 扎赉特旗| 金川县| 三穗县| 昭平县| 手机| 定远县| 黑河市| 环江| 那曲县| 南宁市| 汤阴县| 林甸县| 浪卡子县| 盐山县| 惠安县| 曲靖市| 赤峰市| 西华县|