集合常用方法和過程

2021-08-27 06:57:48 字數 4164 閱讀 6920

集合常用方法

方法:exists,count,limit,first,last,prior,next

過程:extend,trim,delete

extend,trim只適用於巢狀表和陣列,對索引表不適用

delete 只適用於索引表和巢狀表,對陣列不適用

1.exists 確定集合元素下標是否存在,存在返回true,不存在返回false

用法: 集合名.exists(下標) --注意,判斷的是下標,巢狀表和陣列需要初始化

declare

type ename_table_type is table of emp.ename%type index by binary_integer;

ename_table ename_table_type; --初始化乙個元素

begin

ename_table('2'):='ze';

if ename_table.exists('2') then --ename_table.exists('3')返回false

dbms_output.put_line(ename_table('2'));

else

dbms_output.put_line('必須初始化集合元素');

end if;

end;

2.count 返回當前集合變數中元素總個數,統計結果包含null元素

declare 

type ename_table_type is varray(10) of emp.ename%type;

ename_table ename_table_type:=ename_table_type('1','2');

begin

dbms_output.put_line(ename_table.count); --2

ename_table.extend(3);

ename_table(3):=null;

dbms_output.put_line(ename_table.count); --5

dbms_output.put_line(nvl(ename_table(3),'1')); --1

end;

3.limit 對於varray陣列,返回集合變數最大個數,而對巢狀表和索引表是沒有個數限制的,返回null

declare 

type ename_table_type is varray(10) of emp.ename%type;

ename_table ename_table_type:=ename_table_type('1','2');

begin

dbms_output.put_line(ename_table.limit); --10

end;

4.first 返回集合元素下標排序後的第乙個下標

last 返回集合元素下標排序後的最後乙個下標

declare 

type ename_table_type is varray(10) of emp.ename%type;

ename_table ename_table_type:=ename_table_type('2','1');

begin

ename_table.extend(3);

dbms_output.put_line(ename_table.first); --1

dbms_output.put_line(ename_table.last); --5

end;

--對於索引表,第乙個元素下標是指標按元素下標排序後的第乙個元素下標

declare

type ename_table_type is table of emp.ename%type index by varchar2(10); --varchar2需要定義長度

ename_table ename_table_type;

begin

ename_table('b'):='c';

ename_table('a'):='a';

dbms_output.put_line(ename_table.first); --a

dbms_output.put_line(ename_table.last); --b

end;

5.prior 返回當前集合元素的前乙個元素下標(沒有時返回null)

next 返回當前集合元素的後乙個元素下標(沒有時返回null)

declare 

type ename_table_type is table of emp.ename%type index by varchar2(10); --varchar2需要定義長度

ename_table ename_table_type;

begin

ename_table('b'):='b';

ename_table('a'):='a';

ename_table('c'):='c';

ename_table('d'):='d';

dbms_output.put_line(ename_table.prior('c')); --b

dbms_output.put_line(ename_table.next('d')); --null

end;

6.extend 增加元素,只對巢狀表和陣列,增加陣列元素的時候,不能超過陣列最大個數

extend --增加1個元素,元素值為null

extend(n) --增加n個元素,元素值為null

extend(n,i) --增加n個元素,元素值跟第i個元素值相同

declare 

type ename_table_type is varray(10) of emp.ename%type;

ename_table ename_table_type:=ename_table_type('2','1');

begin

ename_table.extend(3,1);

dbms_output.put_line(ename_table(4)); --1

end;

7.trim 從集合尾部刪除元素,只對巢狀表和陣列

trim 從集合尾部刪除乙個元素

trim(n) 從集合尾部刪除n個元素

declare 

type ename_table_type is varray(10) of emp.ename%type;

ename_table ename_table_type:=ename_table_type('2','1');

begin

ename_table.trim;

dbms_output.put_line(ename_table(2)); --報錯下標超出數量

end;

8.delete 刪除集合元素,只適用於索引表和巢狀表

delete 刪除全部元素

delete(n) 刪除第n個元素

delete(m,n) 刪除從m到n之間的所有元素

declare 

type ename_table_type is table of emp.ename%type index by varchar2(10); --varchar2需要定義長度

ename_table ename_table_type;

begin

ename_table('b'):='b';

ename_table('a'):='a';

ename_table('c'):='c';

ename_table('d'):='d';

ename_table.delete('f','c');

dbms_output.put_line(ename_table.count); --4

ename_table.delete('a','c');

dbms_output.put_line(ename_table.count); --1

end;

JavaScript 常用方法集合

這篇日誌用於記錄工作中經常使用到的一些通用的js方法,用於做做筆記 1 計算時間,傳入秒,計算有多少天 秒轉天 param mss 需要轉換的數值,單位秒 function secongtoday mss 2 根據日期計算年齡 根據日期計算年齡 param strbirthday 生日日期字串 yy...

HashMap集合常用方法

hashmap鍵值對儲存,每乙個鍵值對是乙個entry例項物件 key 不可重複,底層通過equals和hashcode方法過濾重複 value 可重複 常用方法 增刪改查 value put key,value 新增乙個鍵值對,返回新增的值,若key已存在,則覆蓋 此特性可用作修改 value r...

List集合常用方法

boolean add e o 向列表的尾部追加指定的元素 void add int index,e element 在列表的指定位置插入指定元素。boolean addall collection c 追加指定 collection中的所有元素到此列表的結尾,順序是指定collection的迭代器...