可以使用hashSet的contains方法代替equals方法,contains速度快

String productNo = "64";
        
//        ArrayList<String> productList = new ArrayList<String>();//結果446:810
//        LinkedList<String> productList = new LinkedList<String>();//結果443:865
//        Set<String> productList = new TreeSet<String>();//結果466:711
        Set<String> productList = new HashSet<String>();//結果443:89
        productList.add("61");
        productList.add("62");
        productList.add("63");
        long m1 = System.currentTimeMillis();
        long times = 100000000;
        
        for(long i=0;i<times;i++) {
            if("61".equals(productNo) || "62".equals(productNo)||"63".equals(productNo)) {
                System.out.println("yes");
            }
        }
        
        
        long m2 = System.currentTimeMillis();
        for(long i=0;i<times;i++) {
            if(productList.contains(productNo)){
                System.out.println("yes");
            }
        }
        long m3 = System.currentTimeMillis();
        System.out.println((m2-m1)+":"+(m3-m2));

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章