集合常用方法
方法: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的迭代器...