本文将用启发式的方式去做java hashmap的源码分析。 刚入门ACM的时候,经常会处理字符串相关问题。下面有一道很常规的题: 计算一个小写英文字符串中每个字符出现的频率。 如果不了解ASCII,用Java直接实现: public class TestMap { public static void main(String[] args…
今天做一个导入数据功能时发现一个问题,就是一个unicode为12288的字符显示为空格,但是用java trim()函数无法去除。测试代码如下 public class TstSeven { public static void main(String[] args) { String str = " "; printStrAscii(s…
exe文件版本一般用于版本管理和客户版本更新,对exe右键->属性,选择版本就能看见。如下图 如果需要再windows上使用java读取exe文件版本,推荐使用jna.jar。本jar包可以调用本地c/c++类库,非常方便就能获取到exe文件版本。但如果是在其他系统上,那就没法用了,因为本地根本就没有此类库。 跨系统读取exe文件版本其实想法…
做页面列表排序的时候很容易遇到如题的问题,一般针对自定义对象的某一属性进行列表排序,自定义属性一般有多个属性,如果要排序的属性比较少(1个或2个),可以写两种比较。但是如果有多种要排序的属性,那就比较麻烦。当然我们有更好的方法,java class类提供了getDeclaredMethod可以通过对象的方法名获取Method对象,再通过Method…
类中成员和方法的可见性一直是JAVA程序员必须时刻关注的问题。常量我们通常都会使用final去修饰,在给final常量赋值的时候,IDE会有很明显的报错。但是我们对于常量数组(集合)一般也会这样,例如public static final String[] STR_LIST = {"a", "b"},我们一般都会认为这种写法没有太大的问题,但是如果…
优化思路 算法优化主要就是在矩阵相乘中,优化的方式也很简单,就是空间换时间。 AES算法的矩阵是有特点的,矩阵如下: 02 03 01 01 01 02 03 01 01 01 02 03 03 01 01 …
java其实本身自带了Aes的实现。这里程序只是作为交流吧。有问题多多指正。算法不懂的可以看这里。 public class AES { public static final byte[] sBox= { (byte)0x63,(byte)0x7c,(byte)0x77,(byte)0x7b,(byte)0xf2,(byte)0x6b,(…