zoukankan      html  css  js  c++  java
  • 检查数组是否包含某个值的方法

    检查数组是否包含某个值的方法
    使用List
    publicstaticbooleanreturn Arrays.asList(arr).contains(targetValue); }
    使用Set
    publicstaticsetnew HashSet<String>(Arrays.asList(arr)); returnset.contains(targetValue); }
    使用循环判断
    publicstaticbooleanforifreturntrue; } returnfalse; }
    使用 Arrays.binarySearch()
    publicstaticbooleanint a = Arrays.binarySearch(arr, targetValue); if0returntrue; elsereturnfalse; }
    时间复杂度
    publicstaticvoidnew"CD""BC""EF""DE""AB"}; //use listlong startTime = System.nanoTime(); forint0100000; i++) { useList(arr, ); } long endTime = System.nanoTime(); long duration = endTime - startTime; System.out"useList: "1000000); //use set startTime = System.nanoTime(); forint0100000; i++) { useSet(arr, ); } endTime = System.nanoTime(); duration = endTime - startTime; System.out"useSet: "1000000); //use loop startTime = System.nanoTime(); forint0100000; i++) { useLoop(arr, ); } endTime = System.nanoTime(); duration = endTime - startTime; System.out"useLoop: "1000000); //use Arrays.binarySearch() startTime = System.nanoTime(); forint0100000; i++) { useArraysBinarySearch(arr, ); } endTime = System.nanoTime(); duration = endTime - startTime; System.out"useArrayBinary: "1000000); }
    : : : :
    使用一个长度为1k的数组
    new1000]; Random s = new Random(); forint01000; i++){ arr[i] = String.valueOf(s.nextInt()); }
    : : : :
    使用一个长度为10k的数组
    new10000]; Random s = new Random(); forint010000; i++){ arr[i] = String.valueOf(s.nextInt()); }
    : : : :
     
    总结
    Arrays.binarySearch()使用 ArrayUtils
    ArrayUtilscontainsimport org.apache.commons.lang3.ArrayUtils; publicstaticbooleanreturn ArrayUtils.contains(arr,targetValue); }
  • 相关阅读:
    Java 时钟
    mybatis中的#和$的区别
    vuex数据管理-数据共享
    vuex数据管理-数据适配
    vue双向数据绑定原理
    基于VUE的SPA单页应用开发-加载性能篇
    vue2.0读书笔记3
    移动端软键盘收起监听
    移动端模态窗口的滚动和橡皮筋问题解决方案
    window.history的跳转实质-HTML5 history API 解析
  • 原文地址:https://www.cnblogs.com/luxd/p/5976761.html
Copyright © 2011-2022 走看看