最近看了一下ascll码相关的文档为了,记录一下我的应用思路
模拟一下APACHE COMMON 包下的upperCase方法,
我自己写的方法如下:
private static String lower_case(String var) {
if ( var == null){
throw new NullPointerException();
}
char[] arr = var.toCharArray();
for (int i = 0, len = arr.length - 1; i <= len; i++) {
if (arr[i] >= 65 && arr[i] <= 90) {
arr[i] = (char) (arr[i] + 32);
}
}
return new String(arr,0,var.length());
测试类MAIN 方法如下:
public static void main(String[] args) {
String t1 = "ASJiEHUQ";
Assert.isTrue(StringUtils.lowerCase(t1).equalsIgnoreCase(lower_case(t1)));
long time1 = System.currentTimeMillis();
for(int i = 0 ; i<100000000 ; i++){
lower_case(t1);
}
long time2 = System.currentTimeMillis();
System.out.println("my test common tool uppercase = \t" + (time2 - time1));
long time3= System.currentTimeMillis();
for(int i = 0 ; i<100000000 ; i++){
StringUtils.upperCase(t1);
}
long time4 = System.currentTimeMillis();
System.out.println("Apache common tool uppercase = \t" + (time4 - time3));
}
结果如下
之前是用C写的一个版本,JAVA 也算是比较中等的级别的语言,自己对JAVA 也算是比较熟悉,所以考虑用Java实现一下,方便以后回顾。