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

宿松网站建设设计网站页面设计与制作实践

宿松网站建设设计,网站页面设计与制作实践,如何用html做班级网站,如何将qq音乐链接到wordpressenum.values我是Java 枚举的忠实拥护者 。 似乎我们一直在等待获得它#xff0c;但是当我们最终获得它#xff08; J2SE 5 #xff09;时#xff0c;该枚举比C和C 提供的枚举要好得多#xff0c;对我来说似乎“ 值得等待” 。 与Java enum一样好#xff0c;它也不是没有问… enum.values 我是Java 枚举的忠实拥护者 。 似乎我们一直在等待获得它但是当我们最终获得它 J2SE 5 时该枚举比C和C 提供的枚举要好得多对我来说似乎“ 值得等待” 。 与Java enum一样好它也不是没有问题。 特别是Java枚举的方法values()返回数组的新副本该副本表示每次调用该数组时可能的值。 Java语言规范阐明了枚举行为。 在Java语言规范Java SE 10 Edition中 第8.9节涵盖了枚举。 第8.9.3节 “枚举成员”列出了两个“隐式声明的方法” public static E[] values()和public static E valueOf(String name) 。 例8.9.3-1 “使用增强的for循环遍历枚举常量”演示了如何调用Enum.values()遍历枚举。 但是问题在于Enum.values()返回一个数组而Java中的数组是可变的[Java语言规范的10.9节 “字符数组不是字符串”提醒我们在区分Java时要注意这一点。 string和Java字符数组。]。 Java枚举是紧密不变的因此有意义的是每次调用该枚举以确保不更改与该枚举关联的数组时该枚举必须返回由values()方法返回的数组的克隆。 最近在OpenJDK 编译器-开发邮件列表上的标题为“ 关于Enum.values内存分配 ”的Enum.values()指出当在紧密循环中调用Enum.values()克隆常量值数组时它将分配大量内存。 ” 该消息的发布者补充说这“可能是出于不变性”并指出“我能理解。” 该消息还引用了同一邮件列表上的2012年3月消息和相关主题。 编译器-开发邮件列表上的两个线程包括一些有趣的当前可用的解决方法。 将由values()返回的枚举值数组缓存为元素的private static final数组这些元素的初始private static final数组初始化为values()返回的数组。 缓存枚举值的固定List 。 创建一个枚举值的EnumSet 。 Brian Goetz在该线程上的消息开头是“这本质上是API设计错误 因为values返回一个数组并且数组是可变的所以每次都必须复制该数组。” [Goetz在该消息中还嘲笑了“ 冻结数组 ”使Java数组变得不可变的概念。] 这个问题不是新问题。 威廉·希尔兹William Shields在2009年12月发表的文章《 Java中的可变性数组和临时对象的成本 》指出“所有这些的最大问题是Java数组是可变的。” 在撰写有关Enum.values()提出的特定问题之前Shields解释了Java Date类中可变性的古老而众所周知的问题 Java枚举有一个称为values()的静态方法该方法返回该enum的所有实例的数组 。 在Date类的课程中这个特殊的决定令人震惊。 List本来是更明智的选择。 在内部这意味着实例数组每次调用时都必须进行防御性复制... 对此问题的其他引用包括“ Enums.values方法 ”Guava线程和“ Java的Enum.values隐藏分配 ”显示缓存Enum.values()返回的数组。 上面还写了一个JDK错误 JDK-8073381 “需要API来获取枚举值而不创建新数组”。 下一个代码清单中说明了本文中讨论的一些当前可用的变通方法这是一个简单的Fruit枚举演示了以三种不同格式缓存该枚举的值。 具有三个“值”的缓存集的Fruit.java枚举 package dustin.examples.enums;import java.util.EnumSet; import java.util.List;/*** Fruit enum that demonstrates some currently available* approaches for caching an enums values so that a new* copy of those values does not need to be instantiated* each time .values() is called.*/ public enum Fruit {APPLE(Apple),APRICOT(Apricot),BANANA(Banana),BLACKBERRY(Blackberry),BLUEBERRY(Blueberry),BOYSENBERRY(Boysenberry),CANTALOUPE(Cantaloupe),CHERRY(Cherry),CRANBERRY(Cranberry),GRAPE(Grape),GRAPEFRUIT(Grapefruit),GUAVA(Guava),HONEYDEW(Honeydew),KIWI(Kiwi),KUMQUAT(Kumquat),LEMON(Lemon),LIME(Lime),MANGO(Mango),ORANGE(Orange),PAPAYA(Papaya),PEACH(Peach),PEAR(Pear),PLUM(Plum),RASPBERRY(Raspberry),STRAWBERRY(Strawberry),TANGERINE(Tangerine),WATERMELON(Watermelon);private String fruitName;Fruit(final String newFruitName){fruitName newFruitName;}/** Cached fruits in immutable list. */private static final ListFruit cachedFruitsList List.of(Fruit.values());/** Cached fruits in EnumSet. */private static final EnumSetFruit cachedFruitsEnumSet EnumSet.allOf(Fruit.class);/** Cached fruits in original array form. */private static final Fruit[] cachedFruits Fruit.values();public static ListFruit cachedListValues(){return cachedFruitsList;}public static EnumSetFruit cachedEnumSetValues(){return cachedFruitsEnumSet;}public static Fruit[] cachedArrayValues(){return cachedFruits;} } 在许多情况下每次调用Enum.values()必须克隆其数组的事实实际上并不重要。 也就是说不难设想在“紧缩循环”中反复调用Enum.values()会很有用然后每次将枚举值复制到数组中都会开始对内存产生明显影响的情况并不难使用以及与更大内存使用相关的问题。 最好有一种标准的方法来以更有效的内存方式访问枚举的值。 前面提到的两个线程讨论了一些潜在实现此功能的想法。 翻译自: https://www.javacodegeeks.com/2018/08/memory-hogging-enum-values-method.htmlenum.values
http://www.zqtcl.cn/news/883888/

相关文章:

  • 温州建网站哪家强网站建设谈客户说什么
  • 网站的子域名怎么设置整站seo排名外包
  • 免费网站在哪下载苏州建设银行网站
  • 邹平 建设项目 网站公示怎样做网站卖自己的产品教程
  • 手机免费网站建设哪家公司好免费动态域名申请
  • 提升网站排名怎么提交自己的网站
  • cms网站开发phpwordpress有什么功能
  • 专业网站制作解决方案自己在家搭建服务器
  • 中小企业网站提供了什么英文营销网站建设
  • 玉环市建设工程检测中心网站网站建设服务的具体条件
  • 主机网站wampserver搭建网站
  • 建设银行网站点不进去深圳龙华区招聘网最新招聘信息
  • 网站建设公司现在还挣钱吗wordpress棋牌
  • 网站建设有什么技术自媒体平台哪个好
  • 可以建网站的软件南昌seo代理商
  • 手机网站建设宽度中小型企业网站模板
  • 网站开发需要的所有技术中信建设有限责任公司历任董事长
  • 安徽省建设干部学校网站首页做软件是什么工作
  • 图书馆网站设计方案安徽质量工程建设网站
  • 电子商务网站建设效果那个网站可以做链接
  • 怎样做投资与理财网站网页设计优秀案例分析
  • 网站制作需要学什么搜狗网页版入口
  • html源码网seo搜索优化工程师招聘
  • 做的网站在小窗口中怎么保持中间广东省公共资源交易中心地址
  • 合肥做网站汇站网织梦网站广告代码教程
  • 复兴专业做网站wordpress搬家502
  • 代做毕网站淘宝权重查询
  • 有专做高端折扣女装的网站吗大连最好的做网站的公司
  • 网站需求嘉兴seo关键词优化
  • 自己开发微网站上海成品网站