Sonntag, 3. April 2011

Snippet of the Week #2

Das 2. Snippet geht um den Grundaufbau von rekursiven Methoden. (Ich hab dieses Thema gewählt weil mein Kollege immer Probleme damit hat :D)

Dieses Codestück liest alle Dateipfade ein auf die zugegriffen werden können/dürfen und gibt sie über die Standardausgabe aus:
    public static void main(String[] args) {
        File[] roots = File.listRoots();
        for (int i = 0; i < roots.length; i++) {
            search(roots[i]);
        }
    }

    public static void search(File file) {
        if (file.isDirectory()) {
            File[] files = file.listFiles();
            if (files != null) {
                for (int i = 0; i < files.length; i++) {
                    search(files[i]);
                }
            }
        } else {
            System.out.println(file.getAbsolutePath());
        }
    }