c 黎克特制轉換與集合

2022-09-03 21:57:14 字數 1798 閱讀 9807

1.黎克特制轉換

1)子類可以賦值個父類

2)如果父類中裝的是子類物件,那麼可以將這個父類強制轉換為子類物件。

3)子類物件可以呼叫父類的成員,但父類的物件不能呼叫子類的成員。

//子類物件可以賦給父類

person p = new student();

//父類中包含子類成員,可以將父類強制轉換成子類。

student ss = (student)p;

2.強制型別轉換判斷

is:表示a型別是否能強制轉換成b,如果能夠轉換成功,則返回乙個true,否則返回乙個false。

as:表示型別轉換。如果能夠轉換則返回對應的物件,否則返回乙個null。

if (p is student)

else

//as 如:p as student p強制轉換成student型別。

student stu = p as student;

3.//建立乙個集合arraylist

arraylist list = new arraylist();

//集合中可以新增任意型別元素

// list.add主要用於新增單個元素

list.add(2);

list.add(3.14);

int);//這個不能直接輸出,需要進行型別強制轉換後才能輸出

用於新增集合元素

list.addrange(new int );//採用range新增的集合能後用for輸出。

for (int i = 0; i < list.count; i++)

list.addrange(list);//新增list集合

//移除單個元素

list.remove(true);

//根據下標移除元素

list.removeat(0);

list.clear();//清空集合

list.removerange(0,4);//根據下標移除一定範圍的元素

list.sort();//公升序排列,但必須滿足的條件是集合中的元素型別要一致

list.reverse();//將集合中的元素反轉

list.insert(0,'1');//在指定下標前,插入單個字元

list.insertrange(0,new int );//在指定的下標前插入乙個集合

bool b = list.contains(1);//判斷集合中是否包含某元素

5.arraylist集合中的長度問題

每次集合中實際包含的元素的個數(count)超過了包含元素的個數(capacity)的時候,集合就會向記憶體中申請多開闢一賠的空間,來保證集合的長度一直夠用。(按照2的倍數增大)

6.hashtable 鍵值對集合

var d = 2;//根據賦值推斷變數的型別。

鍵值對集合中,鍵必須是唯一的,值可以重複。

ht.containskey();//判斷是否有某個鍵

ht.clear();//清空集合中的所有元素

ht.remove();//根據鍵去移除元素

hashtable ht = new hashtable();

//新增鍵值對到集合中去

ht.add(1 ,"張三");

ht.add(2,2);

ht.add(false ,"你是錯五的");

//新增資料的另一種方式   這種形式的新增資料,如果有鍵了,則會乾掉原有的值,新增新的值

ht[6] = "  xinglaisde";

foreach(var item in ht.keys)

,值",item,ht[item]);

}

C 黎克特制轉換

首先要知道黎克特制轉換是建立在繼承基礎之上的類與類之間的轉換 寫法可以參照資料型別轉換,隱式和強制轉換的寫法。例 int a int b b為double型別。下面用 引數關係 首先定義三個類,person 父類 teacher person子類 student person子類 1.person ...

c 黎克特制轉換

黎克特制轉換 1.子類可以賦值給父類 1 如果乙個地方需要乙個父類作為引數,我們可以給乙個子類代替 class program console.writeline str console.readkey public class person public class student person ...

C 黎克特制轉換語法

子類可以賦值給父類 子類物件 student stu newstudent 把子類賦值給父類 person p stu 如果乙個父類裝的是子類的物件,那麼父類可以直接強轉成子類 子類物件stu1 student stu1 newstudent 把子類stu1賦值給父類p person p stu1 ...