hp电脑java图片抖动_HPPC:高效的Java集合库
HPPC的设想和目标
设想
程序员知道自己在做什么,并可能希望直接访问特定集合的类的内部存储(例如,不使用预定义的迭代器)绝大多数情况下程序使用单线程访问。例如,有一个在并发修改的重复验证的小点。使用原始集合的程序在开发期间使用单元测试和回归测试,所以他们在生产系统中的行为不会被严格验证(我们可以假设使用集合类的代码不会违反给出的一组断言)
从上面这些假设建立以下设计思想:
在HPPC中数据类型尽可能简单,对终端代码里的任何优化公开其内部存储。参数验证和状态有效性校验可以使用断言。这意味着约束仅仅能够检查请求是否在运行是发出(java1.4版本以上),当程序被测试和验证时,它运行从约束中检查不会有额外的开销。我们试图避免复杂的接口层次,尽管为了更明确而定义了特定的接口。程序员在设计时应该还是会选择合适的数据结构,并且应该知道自己在做什么。HPPC为大多数普通任务例如,过滤,迭代以及合并提供了工具,但是这些工具通常比实现低层次的对数据存储的直接访问更昂贵(如果需要的话可以使用)。对数据序列化没有特别的支持。这个实现不是线程安全的,并且不会试图提供快速的并发问题检测。
设计与实现
我们希望HPPC类模板可以实现为普通的Java类,以便典型的编程工具可用于开发,测试等。我们希望HPPC类模板可被用作通常的集合类(适用于封装的数值类型或其它对象类型),但同时我们希望特殊的类能够自动转化为一般类型(为了限制内存消耗并且提高效率由于JIT优化)
接口以及与Java集合API的关系
HPPC并不是严格按照Java集合API来制定的,尽管为了更便捷地使用我们的确尽量让HPPC API接近Java集合API。在很大程度上HPPC中缺少一个特别的是“视图”部分(子列表或具有键或值的集合)。特定的类提供了这些视图(例如ObjectObjectHashMap),但是对大部分来说,提供特殊的方法以接收范围和闭合的过滤器。如果表现仍不尽人意,每一个类的内部可用于直接操作。Java集合类和HPPC类之间的基本关系见下表。
相应类型的方法级的API也相似,但差异也是存在的(参考相应类的Java文档)。
下面让我们来看看它的实现方法,HPPC的示例很少,这里引用的是官方示例。
1.新建一个Java项目,记得下载并引入HPPC的jar包以及JUnit库。
2.将示例中的Helpers和HppcExample_001_IteratingOverLists类复制到相应的包下
3.运行单元测试,可以看到由HPPC实现的List类速度的确快了不少,至于其它的,大家也可以一一试验。
开发资源
下载 v0.7.1、JavaDoc APIv0.7.0、JavaDoc API
API概述代码示例FAQ邮件列表
官方网站:https://labs.carrotsearch.com/hppc.html
开源地址:https://github.com/carrotsearch/hppc
hp电脑java图片抖动_HPPC:高效的Java集合库相关推荐
- java图片去掉文字_关于java:Java-添加删除PPT文本和图片水印
在前文中,我介绍过如何给PDF文档增加文本和图片水印.本文将具体解说如何增加.删除PPT文本和图片水印. 此次代码示例所用到的工具是Free Spire.Presentation for Java.F ...
- java容器遍历_高效遍历Java容器详解
通过本文,你可以更深入的学习 Java 语言中 forEach 语法的知识,以及它和 C 语言形式的 for 循环. Steam API 的对比. 简介 Java 程序员经常使用容器,比如 Array ...
- java 图片放在哪_在Java Web应用程序中,应该将用户照片存储在哪里?
小编典典 解决方案前要考虑的事项: 您是否会水平扩展Web应用程序(即,您是否正在运行多个servlet容器实例). 您期望什么样的流量? 图片需要更新的速度(即用户更改了头像后,他们和所有其他用户是 ...
- java图片头像代码_用Java和OpenCV生成Github默认头像
前言 刚刚过完年,把这样那样的事情忙完,就赶紧把博客剩下的主要功能都先做完了,感觉一身轻松. 闲下来了就抽空看看Github上的项目,偶然间发现Github的默认头像很有特色,它并不像其它的网站一样使 ...
- java 图片数字水印_java_如何使用JAVA实现数字水印,数字水印有可见不可见之分, - phpStudy...
如何使用JAVA实现数字水印 数字水印有可见不可见之分,可见的比如课件上印有学校校徽,微博发图片会水印上上传者的信息及微博logo等. 用java实现可见的数字水印,草人主要是用到了java.awt包 ...
- java图片等比缩小算法,java 图片的放大与缩小--等距采样算法
package test; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; ...
- java 图片幻灯片,不需要的java脚本图片幻灯片动画覆盖与网站 Headers
Problem/ Observation 我的图片幻灯片动画框位于固定 Headers 的正下方(这不是问题) . 当我第一次加载页面时,固定 Headers 和图片框之间没有叠加 . 但是,当我单击 ...
- java 图片的路径_【JAVA技术】如何展现绝对路径下的图片
问题描述:通常情况下,我们在jsp页面上要想显示图片,直接用html的标签即可,但是img标签的src属性的值为图片存放的相对地址.如果图片文件没有存放在整个工程中,此时就需要访问图片文件的绝对路径, ...
- java 图片 转像素_使用Java改变图片的像素
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 public void resizeImage(String srcImgPath, String distImgPath, int width, int ...
最新文章
- hdu-5778 abs(暴力枚举)
- Leetcode987 二叉树的垂序遍历
- 【整理】BIOS、BootLoader、uboot对比
- ITK:无写访问权限下遍历具有邻域的图像区域
- SpringCloud微服务注册调用入门-路由网关
- 绿色版DNF(地下城勇士)全键盘连发工具,支持DNF双开
- Linux命令:常用进程查看命令
- Trianglify - 生成五彩缤纷的 SVG 背景图案
- 钢铁侠材质制作——2、线条轮廓部分的制作
- 手机摄影-参数(快门)
- BUUCTF:[SWPU2019]Network
- 如何在PDF文档中添加手写签名?
- cobalt strike安装
- 带你入门VASP的干货网站
- 《流畅的Python》第一章学习笔记
- 抓包工具:教你搞懂websocket如何来分析
- Mathpix:非常好用的公式生成器,可以图片转公式
- JS电影院在线选座简化案例
- unity学习笔记-番外(3d模型的动作设计以及导入-2018版)材质的替换以及动作穿模(自己的手穿模到自己的其他部位)
- 帕金森病常用评测量表有哪些?收藏常笑医学网权威量表免费用
热门文章
- 供应链管理的理论和方法大揭秘
- 关爱码农成长:关于写代码二三事
- 在ABAP的SQL语句中写Oracle Hints
- 2021年恩阳中学高考成绩查询,2021年恩阳中学升学率高不高?
- Java泛型类,方法使用,Java继承的歪解
- mysql的查询、子查询、连接查询、groud by分组查询
- Adaptive Bilateral Filter for Sharpness Enhancement and Noise Removal 阅读理解
- css边距和填充示例代码,css 内外边距(示例代码)
- ASP.NET WebForm / MVC 源码分析
- typescript 类型约束(:普通约束、接口约束、type约束)