Java資料結構---基於數組的表

來源:互聯網
上載者:User
我沒看過 其他語言版的資料結構,但覺得java的實現方法很巧妙--用類和對象來實現.基於數組的表,思想很簡單就是定義一個類用來儲存一組資料,我定義的是ArrayListClass類,在類中定義用來運算元組的方法.其實就是 這麼簡單,但具體操作起來就會遇到很多麻煩了!
  我們這個ArrayListClass類中首先應該包括一個數組型的域list,用來存放資料,這樣放在同一數組中資料之間就產生了位置上的聯絡,使對資料的操作便的簡單.然而這個數組到底是什麼資料類型的,我們期望這個表能用於所有的資料類型,我們不能將他單純的固定成某一種.所以我們必須將這個資料普通化,解決的辦法就是定義一個類,作為所有資料類型的超類.看這個DataElement:
public abstract class DataElement {
 public abstract boolean equals(DataElement otherElement);
 public abstract int compareTo(DataElement otherElement);
 public abstract void makeCopy(DataElement otherElement);
 public abstract DataElement getCopy();
}
將他定義成為抽象的,再在定義其他資料類型時繼承並實現它,我定義了兩個資料類型IntElement和StringElement:
IntElement:
public  class IntElement extends DataElement {
 protected int num;

 //constructors
 public IntElement(){
  num=0;
 }
 public IntElement(int number){
  num=number;
 }
 public IntElement(IntElement otherElement){
  num=otherElement.num;
 }

 ///get-set Methods
 public void setNum(int number){
  num=number;
 }
 public int getNum(){
  return num;
 }

 /* (non-Javadoc)
  * @see DataElement#equals(DataElement)
  */
 public boolean equals(DataElement otherElement) {
  // TODO Auto-generated method stub

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.