当前位置: 首页 > news >正文

网站开发运营推广叫什么软件个人网站素材图片

网站开发运营推广叫什么软件,个人网站素材图片,潍坊知名网站建设价格低,wordpress get_the_excerpt结构为键值的map这个问题可能被认为太基础了#xff0c;但是在论坛中经常被问到。 在本文中#xff0c;我将讨论一种仅在Map ONCE中搜索键的方法。 让我们首先来看一个例子。 假设我正在使用Map创建一个字符串频率列表#xff0c;其中每个键是一个正在计数的String #x… 结构为键值的map 这个问题可能被认为太基础了但是在论坛中经常被问到。 在本文中我将讨论一种仅在Map ONCE中搜索键的方法。 让我们首先来看一个例子。 假设我正在使用Map创建一个字符串频率列表其中每个键是一个正在计数的String 值是一个Integer 每次添加一个String都会递增。 实现它的一种直接方法是 int count map.containsKey(string) ? map.get(string) : 0; map.put(string, count 1); 这段代码运行很慢因为它在地图上包含三个潜在的昂贵操作即containsKey get和[put]http://docs.oracle.com/javase/7/docs/ api / java / util / Map.htmlputKV 。 每个都需要在地图中搜索关键字。 现在让我们重构代码以获得更好的性能。 整数与MutableInteger与AtomicInteger 我们必须调用三个昂贵的操作的重要原因之一是使用Integer进行计数。 在Java中 Integer是不可变的 。 这样可以防止我们在构造后修改整数值。 因此要增加一个计数器我们必须首先从映射中获取整数然后通过添加一个整数来创建另一个新整数然后将其放回映射中。 为了使计数器可变有几种方法。 一种是简单地创建自己的MutableInteger 就像我在下面显示的那样。 public class MutableInteger {private int val;public MutableInteger(int val) {this.val val;}public int get() {return val;}public void set(int val) {this.val val;} } 另一种方法可能是在Java中使用AtomicInteger 该方法用于原子增量计数器等应用程序中。 但是AtomicInteger的主要选择是如果您希望通过对整数进行操作来实现线程安全。 因此它不能用作Integer的替代。 基于此如果线程安全不是您项目的重要考虑因素则我不建议您使用AtomicInteger 。 仅搜索一次密钥 使用MutableInteger之后 我们可以将上面的代码更改为 if (map.containsKey(string)) {MutableInteger count map.get(string);count.set(count.get() 1); } else {map.put(string, new MutableInteger(1)); } 要么 MutableInteger count map.get(string); if (count ! null) {count.set(count.get() 1); } else {map.put(string, new MutableInteger(1)); } 在最坏的情况下如果之前没有看到密钥则代码将搜索密钥两次一次用于检索一次用于设置。 它比上一个要好得多。 但是我们不应该立即满足并停止。 如果您在Java文档中选中了[Map.put]http://docs.oracle.com/javase/7/docs/api/java/util/Map.html#putKV方法您会发现此方法将返回the previous value associated with key 。 这意味着我们可以将检索和设置合并为一个。 但是您可能想知道如果不首先检索计数器如何设置新计数器 现在我们终于可以触摸本文中最棘手的部分我们可以简化一下零频率计数器的放置 public int incrementCount(K key, int count) {MutableInteger tmpCount new MutableInteger(0);MutableInteger oldCount map.put(key, tmpCount);if (oldCount ! null) {count oldCount.get();}tmpCount.set(count);return count;}另一个柜台 看起来将所有必要的操作放入一个类中将对将来的使用有所帮助。 因此我创建了一个名为Counter的类并将其公开。 计数器定义一个集合该集合对对象出现在集合中的次数进行计数。 假设您有一个包含{a, a, b, c}的Counter。 在“ a”上调用getCount将返回2而在keySet上调用将返回{a, b, c} 。 此类的工作方式类似于Map 但具有不同的方法可以轻松获取/设置/增加对象的计数并使用该计数计算各种函数。 Counter构造函数和addAll方法可用于复制另一个Counter的内容。 根据IntCounter和AbstractMapBag修改Counter类。 Counter上的一些突出操作包括 crementCount和decrementCount 将给定键的给定计数与当前计数相加/相减。 如果该键以前未出现过则假定其计数为0因此增量方法会将其计数设置为给定的数量。 减量会将其计数设置为-1。 getCount 返回给定键的当前计数如果以前没有看到过则返回0。 keysAt keysAbove和keysBelow 返回其计数在给定阈值之上之下或之下的一组键。 该集合可能包含0个元素但不会为null。 argmin 和argmax 找到并返回此Counter中具有最小/最大计数的密钥。 如果有几个最小/最大计数则返回随机值。 如果此Counter为空则返回null。 参考 用Java递增Map值的最有效方法–只需从PGuru博客的JCG合作伙伴 Peng Yifan那里 搜索一次密钥 。 翻译自: https://www.javacodegeeks.com/2013/10/most-efficient-way-to-increment-a-map-value-in-java-only-search-the-key-once.html结构为键值的map
http://www.huolong8.cn/news/310164/

相关文章:

  • 仿站侵权吗旅游网站的建设的文献综述
  • 网站外包多少钱广州网站营销seo
  • 站点搜索liferay 做网站
  • 内蒙网站建设八戒财税
  • 钢材销售都在哪个网站做潘嘉严个人网站
  • 开发出来的电子商务网站域名开发html网页的软件有哪些
  • 网站制作教程dw一个服务器可以备案几个网站
  • 自助建站系统免授权版app关键词推广
  • 网站优化 北京罗湖附近公司做网站建设哪家服务周到
  • 食品网站的功能定位阿里服务器搭建wordpress
  • 网站设计怎么自学济南新闻头条最新事件
  • 推荐一个做淘客网站wordpress企业cms
  • 可以兼职做设计的网站wordpress 密码生成二维码
  • 个人网站模板网络营销方式和工具
  • 泉州网站设计制作php程序员网站开发建设
  • 摄影网站的实验设计方案做名片去哪个网站
  • 公众号的微网站开发专业服务网站开发
  • wordpress怎么加插件下载网站关键字优化软件
  • 兰州网站制作成都海外网新闻
  • 唐山市路桥建设有限公司网站企业网站备案资料样本
  • 网站建设wap站网站建设验收报告
  • 电商网站建设精英wordpress优化网站打开速度
  • 网站建设大建材做网站好吗
  • 外贸 企业网站 建设可口可乐vi设计手册
  • 策划公司网站国外优秀网站建设
  • 网页和网站的概念有什么网站可以做微信支付宝支付宝
  • 一个网站多少钱wordpress首页如何增加模块
  • 境外建设网站贴吧注册推广赚钱一个40元
  • 竞价推广培训课程连云港网站关键字优化市场
  • asp网站搭建工具网站被spider重复抓取