思路:
1. 由于已知:最内层数组存放的是基本数据类型,所以与“列出目录(可能有子目录)下所有文件”很相似,列出文件是遍历整个目录,列出数组的元素就是遍历这个多维数组。因层次未知,递归可以遍历。
2. 类似地,列出文件是先考虑一个目录,遍历数组也先考虑一维数组:
for(int a :arr)
System.out.println(a);
3. java的多维数组,实际上是数组的数组。是数组的,调用自身继续深入,不是则打印:- public class Test{
- public static void main(String[] args)
- {
- Object[][] arr = {
- {1,2,3,1},
- {1,3},
- {3,4,"aa"}
- };
- showArray(arr);
- }
- static void showArray(Object[] arr){
- for(Object a :arr){
- if(a.getClass().isArray())
- showArray((Object[]) a);
- else
- System.out.println(a);
- }
- }
- }
复制代码 |