aboutsummaryrefslogtreecommitdiff
path: root/challenge-161/adam-russell/java/ch-1.java
blob: f88369233a831af6c7877b171e0b8bff9a7e31f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import java.util.Arrays;
import java.util.Iterator;
import java.util.ArrayList;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;

class Abecedarian{
    static final String FILENAME = "dictionary"; 
    private String filename;

    public Abecedarian(String _filename){
        this.filename = _filename;
    }
    
    public ArrayList abecedarians(){
        ArrayList abecedarians = new ArrayList();
        String line;
        try{
            InputStreamReader isr = new InputStreamReader(new FileInputStream(this.filename));
            BufferedReader br = new BufferedReader(isr);
            while((line = br.readLine()) != null){
                char[] chars = line.trim().toCharArray();
                Arrays.sort(chars);
                if(new String(chars).equals(line.trim())){
                    abecedarians.add(line.trim());
                }
            }
        }
        catch(Exception e){
            e.printStackTrace();
        }
        return abecedarians;
    }

    public static void main(String[] args){
        Abecedarian abc = new Abecedarian(FILENAME);
        Iterator iter = abc.abecedarians().iterator();
        while(iter.hasNext()){
            String s = (String) iter.next();
            System.out.println(s);
        }
    }
}