この記事はJavaとPythonを基礎から学びたい私のための Advent Calendar 2024の3日目の記事です。
配列とlistが似ていてたまに間違えてしまうことがあるので、もう間違えないようにするための勉強です。
複数個のデータ
多くの数値や文字を扱うことができるのが配列やListのいいところです。多くの変数を作らなくて済むので、とても見やすくなります。ここでは、その2つの特徴や違いを確認していきます。
配列
型(今回はint)の横に[]をつけるだけで、たくさんのデータを入れておけます。
public class TEST{
public static void main(String[] args){
int[] A={0,2,3,5,8};
for(int B:A){
System.out.println(B);
}
}
}
昨日勉強した拡張for文を使って、配列の中身をひとつづつ取り出しています。ちなみにString型でも行けました。
List
最初にArrayListとListのやつをimportしなければならないのを忘れそうです。必須です。
import java.util.ArrayList;
import java.util.List;
public class TEST{
public static void main(String[] args){
List<Integer> A=new ArrayList<Integer>();
A.add(0);
A.add(2);
A.add(2);
A.add(6);
A.add(8);
System.out.println(A);
}
}
出力すると、[]に囲まれて中身が出てきました。
List<Integer> A =List.of(0,2,2,6,8);
Aという名前の空のListに、あとからaddで中身を加えています。ここには書いていませんが、Removeで要素を消すこともできるようです。
Enum
public class TEST{
public static void main(String[] args){
Favorite B=Favorite.watchTV;
System.out.println(B);
}
public enum Favorite{
Sushi,
Pizza,
Walking,
watchTV
};
}
好きなものやことを並べて、その中の一つを出力してみました。ここではwatchTVが出てきます。Bに、Favoriteという名前のEnumの中に入っているwatchTVを入れて、Bを出力しています。
Enumの中のものについてひとつひとつ別の名前を持たせることもできるようです。
public class TEST{
public static void main(String[] args){
Favorite B=Favorite.Sushi;
System.out.println(B.getKanrenyougo());
}
public enum Favorite{
Sushi("Wa"),
Pizza("You"),
Walking("Undou"),
watchTV("Himatubusi");
private String Yakiimo;
private Favorite(String Yakiimo){
this.Yakiimo=Yakiimo;
}
public String getKanrenyougo(){
return Yakiimo;
}
}
}
出力結果:Wa
結構長めのコードですが、呼び出す要素に対応した別の名前を呼び出すこともできるようです。また、各要素に数字を振ることもできるようです。
それぞれの強みを考えてみる
Enum型は今見た通り、文字に対応する別の名前を関連付けられるのがほかにない強みです。関連させたい文字がある場合はEnumを使うのがベストだと感じました。
Listは要素を後から追加、削除できるようです。途中から中身をいじりたいときはこれが便利そうです。
そのほか、特に何もなければ配列を使うのがよさそうです。
感想(まとめ)
大量の数値や文字を扱うには様々な方法があり、それぞれ強みが分かれていた。それぞれの使う場面をしっかり見極めることが大切だと感じた。
今回勉強した配列やList、Enumについてはより詳しく見ていくといろいろできることがあるようです。
参考文献