技術メモ
Javaメモ -- 初期化の話しについて
public class Sample {
public Sample() {
// コンストラクタ
}
public void initialize(){
// 初期化処理
}
}
イニシャライザ(initializer)とは、クラスが初期化されたときやインスタンスが生成されたときに、その直後に変数を初期化します。
イニシャライザには「インスタンスイニシャライザ」と「staticイニシャライザ」の2種類が存在します。
コンストラクタはクラスをインスタンス化するときに実行される。
イニシャライザとコンストラクタの実行優先順位
イニシャライザとコンストラクタの実行優先順位は以下となります。
①staticイニシャライザ
②インスタンスイニシャライザ
③コンストラクタ
もしイニシャライザとコンストラクタが同じ変数へ代入をする場合は、最後に実行されるコンストラクタの結果が初期値となります。
Javaメモ -- List構造 コレクションクラス
List構造は、要素を順番付けして管理するデータ構造です。
「ArrayList」「LinkedList」の2種類があります。
要素がインデックス(番号)順に並んでいるので、番号を指定して要素の取得、挿入、更新、削除ができます。
また、Iteratorや拡張for構文を使って先頭から順番に要素を取得することも出来ます。
ArrayListは要素の取得が早いが挿入や削除が遅い、LinkedListは要素の挿入や削除は早いが取得が遅いという特徴があります。
List構造は、要素の重複は可能です。
public class Sample {
public static void main(String args[]){
List list = new ArrayList<>();
System.out.println(list.size()); // 0
list.add("Apple");
list.add("Orange");
list.add("Lemon");
System.out.println(list.size()); // 3
for (int i = 0; i < list.size(); i++){
System.out.println(list.get(i));
}
}
}
Javaメモ -- ArrayList型からString配列に変換する
public class Sample {
public static void main(String args[]){
// StringのArrayListを作成
ArrayList list = new ArrayList();
list.add("A");
list.add("B");
list.add("C");
// ArrayListをString配列に変換する
String[] s = (String[])list.toArray(new String[0]);
//String配列を画面表示する
for (int i = 0; i < list.size(); i++){
System.out.println(s[i]);
}
}
}
参考にしたサイト
Javaちょこっとリファレンス