জাভা 5 এর সাথে আমরা লিখতে পারি:
Foo[] foos = ...
for (Foo foo : foos)
বা লুপের জন্য কেবল একটি Iteable ব্যবহার করে। এটি খুব সহজ।
তবে আপনি এর মতো পুনরাবৃত্তির জন্য জেনেরিক পদ্ধতি লিখতে পারবেন না:
public void bar(Iterable<Foo> foos) { .. }
এবং এটিকে অ্যারে দিয়ে কল করা যেহেতু এটি কোনও মূল্যবান নয়:
Foo[] foos = { .. };
bar(foos); // compile time error
আমি এই নকশার সিদ্ধান্তের পিছনে কারণগুলি নিয়ে ভাবছি।
java.lang.reflect.Array
, তবে এর কার্যকারিতা দুর্বল। তবে আপনি চাইলে আদিম ধরণের অ্যারেগুলিকে গুটিয়ে রাখতে আপনার নিজের পুনরাবৃত্তকারী (বা তালিকা প্রয়োগকরণের তালিকা) লিখতে পারেন।