Java で:
Date d[] = new Date[2];
Date temp[] = {new Date(),new Date()};
オラクルでは
temp date = (sysdate,sysdate);--it works
ただし、Java コードで行うように、temp のサイズを 2 として定義する方法。
質問を理解しているかどうかはよくわかりません。PL/SQL のタグを付けたので、「in Oracle」コードは構文的に正しい PL/SQL コードを意図していると思いますが、投稿したものは有効な構文ではありません。
PL/SQL には、3 つの異なるタイプのコレクションがあります。ネストした表、連想配列およびVARRAYがあります。ネストされたテーブルまたは連想配列のサイズは、コンパイル時に宣言しません。必要なスペースが使用されます。2 つの日付を格納する varray を宣言できるように、コンパイル時に varray のサイズを宣言します。ただし、ネストされたテーブルを使用するのではなく、サイズ 2 の VARRAY を宣言したい場合は想像できません。2 つの要素のコレクションに制限してもメリットがないからです。ただし、必要に応じて、以下のように varray を宣言できます。
SQL> ed
Wrote file afiedt.buf
1 declare
2 -- Nested table
3 type date_nt is table of date;
4 -- Associative array
5 type date_aa is table of date index by pls_integer;
6 -- VArray
7 type date_va is varray(2) of date;
8 l_date_nt date_nt := date_nt( sysdate, sysdate );
9 l_date_va date_va := date_va( sysdate, sysdate );
10 l_date_aa date_aa;
11 begin
12 l_date_aa(1) := sysdate;
13 l_date_aa(100) := sysdate;
14* end;
15 /
PL/SQL procedure successfully completed.