隨筆 - 45, 文章 - 2, 評論 - 11, 引用 - 0
          數據加載中……

          commons-lang源碼學習之ArrayUtils

          1、比較兩個對象是否類型相同

          array1.getClass().getName().equals(array2.getClass().getName()

          2、倒置(reverse)數組中的元素

                   int i = 0;
                  int j = array.length - 1;
                  Object tmp;
                  while (j > i) {
                      tmp = array[j];
                      array[j] = array[i];
                      array[i] = tmp;
                      j--;
                      i++;
                    }

          3、得到數組的容器類型

          array.getClass().getComponentType();

          4、lastIndex()這類方法的實現

          for (int i = startIndex; i >= 0; i--) {
                        if (objectToFind.equals(array[i])) {
                            return i;
                        }
          }

          5、isEmpty()這類方法的實現只要一句話,isNotEmpty方法依此推

          return array == null || array.length == 0;

          6、將兩個數組合并addAll

                 boolean[] joinedArray = new boolean[array1.length + array2.length];
                 System.arraycopy(array1, 0, joinedArray, 0, array1.length);
                 System.arraycopy(array2, 0, joinedArray, array1.length, array2.length);

          7、將新元素加入到數組中

                      int arrayLength = Array.getLength(array);
                      Object newArray = Array.newInstance(array.getClass().getComponentType(), arrayLength + 1);
                      System.arraycopy(array, 0, newArray, 0, arrayLength);
                      return newArray;

          8、獲得數組長度的方法

          int arrayLength = Array.getLength(array);

          9、以反射的方式獲得數組對象

          Array.newInstance(array.getClass().getComponentType(), arrayLength + 1)

          10、將某一元素從數組中移除

          Object result = Array.newInstance(array.getClass().getComponentType(), getLength(array)- 1);
                 System.arraycopy(array, 0, result, 0, index);
                 if (index < length - 1) {
                     System.arraycopy(array, index + 1, result, index, length - index - 1);
                 }

          posted @ 2011-03-08 15:01 jack zhai 閱讀(798) | 評論 (0)編輯 收藏

          泛型知識

          1、泛型是給java編譯器使用的,在源文件經過編譯后,編譯器會將類型信息去掉,所以

          test

          2、可以繞過編譯器的類型信息檢查,而直接加入對象

          test

          3、泛型通配符

          test

          4、限定通配符上邊界,限定通配符上邊界

          test

          test

          5、自定義泛型方法

          test

          6、類級別泛型

          test

          7、通過反射獲得泛型的實際類型參數

          test


           

          posted @ 2011-03-05 19:45 jack zhai 閱讀(94) | 評論 (0)編輯 收藏

          對傳入字符進行排列組合并進行md5編碼,最后寫入文件

          Combinations
          md5Util

          IO工具包

          md5Util


           

          posted @ 2011-03-03 13:17 jack zhai 閱讀(309) | 評論 (0)編輯 收藏

          對象的創建過程《Think in java》讀書筆記

          假設有一個Dog類

          1、當首次創建Dog的對象時(構造器可以看成靜態方法),或者Dog類的靜態方法/靜態域首次被訪問時,java解釋器必須查找類路徑,以定位Dog.class文件
          2、然后載入Dog.class,有關靜態初始化的所有動作都會執行。因此,靜態初始化的所有動作都會執行。因此,靜態初始化只在Class對象首次加載的時候進行一次。
          3、當用new Dog()創建對象的時候,首先將在堆上為Dog類分配足夠的存儲空間。
          4、這塊存儲空間會被清零,這就看上去地將Dog對象中所有基本類型數據都設置成了默認值,而引用則被設置成了null。
          5、執行所有出現于字段定義處的初始化動作。
          6、執行構造器。

          posted @ 2011-02-23 16:17 jack zhai 閱讀(129) | 評論 (0)編輯 收藏

          類的內部,變量的定義先后順序決定變量初始化的順序

          1、在類的內部,變量的定義先后順序決定變量初始化的順序,它們將會在任何方法(構造函數)被調用前被初始化

           1package cc.text;
           2
           3public class Dog {
           4    
           5    Cat c1 = new Cat(1) ; ;
           6    Cat c2 = new Cat(2) ;
           7    public Dog(){
           8        c1 = new Cat(1) ;
           9    }

          10    public void foo(){
          11        System.out.println("dog woo!");
          12    }

          13    Cat c3 = new Cat(3) ;
          14    
          15    public static void main(String[] args) {
          16        Dog d = new Dog() ;
          17        d.foo() ;
          18    }

          19}

          20class Cat{
          21    public Cat(int i){
          22        System.out.println("ini cat"+ i);
          23    }

          24}

          25


          posted @ 2011-02-23 16:07 jack zhai 閱讀(211) | 評論 (0)編輯 收藏

          方法重載

          a、區分方法的重載有:

          1、參數順序

          public void info(int i, String str);

          public void info(String str, int i);

          2、以返回值區分重載方法

          void f(){}

          int f(){return 1;}

          當int i = f();時就會調用int f(){return i;}方法

          b、基本類型的重載

          1、基本類型從一個“較小”的類型自動提提升成“較大”的類型

          2、如果找不到有char型的方法,就會把char型提升為int型

          posted @ 2011-02-23 13:41 jack zhai 閱讀(138) | 評論 (0)編輯 收藏

          使用Dbcp和DbUtils的簡單實例

               摘要: 這個類是用OSChina紅薯老大的。 package com.dbutilTest; import java.sql.Connection; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; import javax....  閱讀全文

          posted @ 2011-02-22 00:02 jack zhai 閱讀(65) | 評論 (0)編輯 收藏

          面向對象學習之狗門代碼

          Bark,狗叫聲類

          BarkRecognizer,狗叫識別器

          狗門

          遙控器

          測試類

          posted @ 2010-12-21 12:01 jack zhai 閱讀(166) | 評論 (0)編輯 收藏

          spring框架下使用hibernateTemplate

          在spring配置文件中加入:

          spring配置文件

          posted @ 2010-12-17 21:43 jack zhai 閱讀(134) | 評論 (0)編輯 收藏

          Struts2.1.6 + Spring2.5.6 + Hibernate3.3.2所需要的jar包列表

          jar包名稱

          所在位置

          說明

          antlr-2.7.6.jar

          hibernate/lib/required

          解析HQL

          aspectjrt

          spring/lib/aspectj

          AOP

          aspectjweaver

          ..

          AOP

          cglib-nodep-2.1_3.jar

          spring/lib/cglib

          代理,二進制增強

          common-annotations.jar

          spring/lib/j2ee

          @Resource

          commons-collections-3.1.jar

          hibernate/lib/required

          集合框架

          commons-fileupload-1.2.1.jar

          struts/lib

          struts

          commons-io-1.3.2

          struts/lib

          struts

          commons-logging-1.1.1

          單獨下載,刪除1.0.4(struts/lib)

          struts

          spring

          dom4j-1.6.1.jar

          hibernate/required

          解析xml

          ejb3-persistence

          hibernate-annotation/lib

          @Entity

          freemarker-2.3.13

          struts/lib

          struts

          hibernate3.jar

          hibernate

           

          hibernate-annotations

          hibernate-annotation/

           

          hibernate-common-annotations

          hibernate-annotation/lib

           

          javassist-3.9.0.GA.jar

          hiberante/lib/required

          hibernate

          jta-1.1.jar

          ..

          hibernate transaction

          junit4.5

             

          mysql-

             

          ognl-2.6.11.jar

          struts/lib

           

          slf4j-api-1.5.8.jar

          hibernate/lib/required

          hibernate-log

          slf4j-nop-1.5.8.jar

          hibernate/lib/required

           

          spring.jar

          spring/dist

           

          struts2-core-2.1.6.jar

          struts/lib

           

          xwork-2.1.2.jar

          struts/lib

          struts2

          commons-dbcp

          spring/lib/jarkata-commons

           

          commons-pool.jar

          ..

           

          struts2-spring-plugin-2.1.6.jar

          struts/lib

           

          posted @ 2010-12-15 09:53 jack zhai 閱讀(3657) | 評論 (2)編輯 收藏

          僅列出標題
          共5頁: 上一頁 1 2 3 4 5 下一頁 
          主站蜘蛛池模板: 察哈| 岚皋县| 桂林市| 汶上县| 保亭| 海南省| 和平区| 长葛市| 鲜城| 岫岩| 台北市| 沧源| 潍坊市| 米易县| 丰顺县| 谷城县| 乐安县| 民权县| 宜宾市| 新泰市| 平定县| 泾阳县| 南乐县| 朔州市| 当雄县| 齐河县| 恭城| 汨罗市| 道真| 花垣县| 黄大仙区| 惠州市| 班戈县| 洪泽县| 内乡县| 黑水县| 个旧市| 镇雄县| 阿荣旗| 晋城| 武川县|