Javaで配列を定義する場合、次元数はいくつまで作れるか、知ってますか?
業務システムなんかの場合、多次元配列を使うこと自体稀で、とりあえず3次元
まで作れるのは知っていた。
が、実際のところ何次元までいけるのか、知ろうとしたことがなかった。
というか、知る必要がなかったということだ。
ところが今日、フィリピンでJava講習をしているパートナー会社の
講師の方(日本人)からメールで表題のような質問があった。
私は普段日本人相手にJavaの講習をしているが、こんな質問は
受けたことがなかった。フィリピン人は純粋だ。
で、講師の方が送ってきたサンプルソースがこんな感じのもの。
public class ArrayDimTest { public static void main(String[] args) { String[][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] [][][][][][][][][][][][][][][][] a; } }
[]が256個あるわけです。
で、これをコンパイルするとエラーになり、Eclipseだとご丁寧に
Too many array dimensions. Maximum is 255
と教えてくれる。
Java言語仕様を見ても、次元数の範囲については規定がないのだが、
コンパイラがエラーを出すのだからこれが仕様と言うことなのだろう。
で、これがわかって何のメリットがあるのか?
知的好奇心は満たされるわけだが・・・