Subversion Repositories programming

Rev

Rev 221 | Rev 224 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
221 ira 1
 
2
public class IPAddr
3
{
4
    private int[] fields = new int[4];
5
 
6
    public IPAddr (String ip)
7
    {
222 ira 8
        int i;
221 ira 9
        String[] sp = ip.split("\\.");
222 ira 10
 
11
        for (i=0; i<sp.length; i++)
221 ira 12
            fields[i] = Integer.parseInt(sp[i]);
13
    }
14
 
15
    public int getField (int fieldNum)
16
    {
17
        return fields[fieldNum];
18
    }
19
 
20
    public int compareTo (IPAddr ip)
21
    {
22
        int i;
23
 
24
        for (i=0; i<4; i++)
25
            if (fields[i] < ip.getField(i))
26
                return -1;
27
            else if (fields[i] > ip.getField(i))
28
                return 1;
29
 
30
        return 0; // Equal
31
    }
32
 
33
    public int compareTo (String ip)
34
    {
35
        IPAddr that = new IPAddr (ip);
36
 
37
        return this.compareTo(that);
38
    }
39
 
40
    public String toString ()
41
    {
222 ira 42
        String s = new String("" + fields[0] + '.' + fields[1] + '.'
43
                            + fields[2] + '.' + fields[3]);
221 ira 44
        return s;
45
    }
46
}
47