- 浏览: 291729 次
文章分类
- 全部博客 (148)
- Shell (2)
- Python (4)
- Java (31)
- Javascript (4)
- Android (7)
- SQL优化 (0)
- Linux (5)
- webOS (4)
- MySQL (18)
- memcach redis (1)
- memcach (0)
- redis (3)
- memcache (2)
- svn (1)
- UED (1)
- 网络 (1)
- virtual box (1)
- git (1)
- Gitosis (1)
- 云计算 (2)
- 12306 (1)
- google (1)
- spdy (1)
- nginx (1)
- tomcat (2)
- SSL (2)
- lucene (2)
- 空间搜索 (1)
- lzo (1)
- 数据压缩 (1)
- ios (1)
- maven (1)
- elasticsearch (1)
- scribe (1)
- flume (1)
- jni (1)
- jna (1)
- hadoop (2)
- 大数据 (1)
最新评论
-
aa80303857:
不错,学习了。互相关注一下。
Sitemesh学习笔记 -
xiaozang:
...
关于nginx的rewrite重写规则 -
coderuncle:
楼主有没有研究过cloudera flume和apache f ...
scribe,flume -
奔跑的犀牛:
...
linux下自动启动mysql -
lsn_1212:
网上装svn的资源太多了,这个挺好的,说的挺全的。
SVN Server安装部署攻略(Linux+SubVersion+Apache)
在使用PAT-Tree的中文实现中需要用到大量的位运算,BitSet在效率上的表现可能尚待商榷,不过拿来做实验是没有问题的。
在Java的文档中说明了BitSet实现了Vector接口,是一个可按需增长的存储位的数据结构,位的值位布尔型,初始大小为64bit,初始值均为“false”。
常用方法:
- void set(int bitIndex)、void set(int bitIntex, boolean value) : 将bitIndex位置的值设为“true”或者给定的值
- boolean get(int bitIndex) :获取bitIndex位置处的值
- BitSet get(int fromIndex, int toIndex) :以BitSet存储返回fromIndex与toIndex区间之间的值
- void clear()、void clear(int bitIndex)、void clear(int fromIndex, int toIndex) :置整个BitSet/相应位置/区间的值为“false”
- int length() :BitSet的逻辑大小(实际使用大小),值为“true”最大的索引位加1
- int size() :BitSet的实际大小,默认为64
- and(BitSet set)、andNot(BitSet set) … :与另一BitSet相应的逻辑位运算
- String toString() :返回值为“true”的位置的String对象,如第1和第10位为“true”,其他位置为“false”,则返回{1, 10}
应用实例:下面的代码将字符转换为与编码对应的二进制字符串:
package org.eone.test; import java.util.BitSet; public class TestBitSet { private static String toBitSet(String str){ String result = "["; BitSet bitSet = new BitSet(); byte[] strBits = str.getBytes(); for(int i = 0; i< strBits.length * 8; i++){ if((strBits[i / 8] & (128 >> (i % 8))) > 0){ bitSet.set(i); } } for(int i = 0; i < bitSet.length(); i++){ if(bitSet.get(i)) result += "1"; else result +="0"; } result += "]"; return result; } public static void main(String[] args) { String str = "测试一下"; System.out.println(toBitSet(str)); } }使用时还需注意,在多线程情况下要注意线程安全问题。
发表评论
-
Spring发送邮件。
2013-06-04 15:15 1181Spring邮件抽象层的主要包为org.springfram ... -
JNA—JNI终结者
2013-03-04 14:08 1422JNA— http://blog.csdn.n ... -
Java 压缩实现
2013-01-29 10:51 1024Java压缩技术(一) ZLib Java压缩技术(二) ZI ... -
深入理解JVM内幕:从基本结构到Java 7新特性
2013-01-26 22:57 873原文链接 http://www.importnew.com/ ... -
使用logback轻松管理日志
2013-01-22 14:12 2276最近才开始在项目中使用logback,有一种相见恨晚的感觉, ... -
SSL双向认证java实现
2013-01-09 13:58 1180本文通过模拟场景,介绍SSL双向认证的java实现 默认的情 ... -
TOMCAT-SSL双向认证-配置实例
2013-01-09 13:54 1108SSL (Secure Socket Layer - 安全套接 ... -
Java入门-简单的RMI示例
2012-12-06 11:11 1237RMI是一种分布式技术,使用RMI可以让一个虚拟机上的应 ... -
由12306.cn谈谈网站性能技术
2012-10-17 16:35 95212306.cn网站挂了,被 ... -
Server redirected too many times
2012-09-17 16:54 6041我之前遇到过这种问题,有些网站是这样的,他判断cooki ... -
java并发编程
2012-08-15 19:45 0Queue BlockingQueue Con ... -
在junit中使用open session in view
2012-08-07 11:22 2093废话不多说直接上代码: jpa的 import ... -
mvn指定项目名称
2012-06-07 17:10 979call mvn eclipse:clean eclipse: ... -
在JVM关闭前想做的操作Rumtime
2011-12-01 11:07 1098在虚拟机被关闭前想做一些收尾工作,可以使用 Runtim ... -
Apache和Subversion集成安装与配置
2011-08-12 17:30 1171要准备的东西如下:1,apac ... -
Nginx+tomcat 做负载均衡
2011-08-12 17:27 1382一、 1、将tomcat 的serv ... -
SVN Server安装部署攻略(Linux+SubVersion+Apache)
2011-07-18 18:45 2732一. 安装apr依赖库(Apache Po ... -
git
2011-05-26 11:38 12401. git init 2. cd - 快速返回 3 ... -
java工具集合
2011-05-23 17:29 890code review gerrit g ... -
常用的comet框架
2011-05-20 11:46 1348Atmosphere pushlet DWR comet ...
相关推荐
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
### Java入门笔记3_Datastructure知识点详解 #### 4. 数据结构 (Data Structure) ##### 4.1 数组 (Array) **4.1.1 基本概念** 数组在Java中被视为一种对象类型,这意味着在使用数组之前必须对其进行实例化。数组...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
对于自定义的编码格式,可以使用BitSet或ByteBuffer等工具进行处理。 最后,我们还要注意性能优化。由于图像处理通常涉及大量的计算,因此在Java中进行图像处理时,应考虑使用多线程、缓存策略以及避免不必要的对象...
- 讨论了如何使用集成开发环境(IDE)如Eclipse或IntelliJ IDEA编写和运行Java程序。 #### 1.5 编写和运行Java程序 - **编译过程**:详细解释了Java源代码如何被编译成字节码。 - **运行时环境**:阐述了Java虚拟机...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
A.1.3 传递和使用Java对象 A.1.4 JNI和Java违例 A.1.5 JNI和线程处理 A.1.6 使用现成代码 A.2 微软的解决方案 A.3 J/Direct A.3.1 @dll.import引导命令 A.3.2 com.ms.win32包 A.3.3 汇集 A.3.4 编写回调...
2. **性能调优(Performance Tuning)**: 通过调整缓存设置、使用倒排索引位集(Bitset)优化、合理分配硬件资源等方式提升性能。 3. **错误处理与恢复(Error Handling and Recovery)**: 确保在异常情况下能正确...
位集合(BitSet) 向量(Vector) 栈(Stack) 字典(Dictionary) 哈希表(Hashtable) 属性(Properties) 以上这些类是传统遗留的,在Java2中引入了一种新的框架-集合框架(Collection),我们后面再讨论。 枚举...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...
1.9 Java、Internet与万维网 1.10 其他高级语言 1.11 结构化编程 1.12 典型C++环境基础 1.13 C++与本书的一般说明 1.14 C++编程简介 1.15 简单程序:打印一行文本 1.16 简单程序:两个整数相加 1.17 内存的...
1.9 Java、Internet与万维网 1.10 其他高级语言 1.11 结构化编程 1.12 典型C++环境基础 1.13 C++与本书的一般说明 1.14 C++编程简介 1.15 简单程序:打印一行文本 1.16 简单程序:两个整数相加 1.17 内存的...