Subversion Repositories bacoAlunos

Rev

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

Rev Author Line No. Line
1070 jmachado 1
package pt.estgp.estgweb.utils;
1068 jmachado 2
 
3
import java.util.ArrayList;
4
 
5
/**
6
 * Created by jorgemachado on 16/11/15.
7
 */
8
public class DynamicArrayList<E> extends ArrayList<E>
9
{
10
    1.5.0/docs/api/java/lang/Class.html">Class referenceClass;
11
    public DynamicArrayList(1.5.0/docs/api/java/lang/Class.html">Class clazz)
12
    {
13
        this.referenceClass = clazz;
14
    }
15
 
16
 
17
    @1.5.0/docs/api/java/lang/Override.html">Override
18
    public E get(int i) {
19
        if(i >= size())
20
        {
21
            while(i >= size())
22
            {
23
                try {
24
                    super.add((E)referenceClass.newInstance());
25
                } catch (1.5.0/docs/api/java/lang/InstantiationException.html">InstantiationException e) {
26
                    e.printStackTrace();
27
                } catch (1.5.0/docs/api/java/lang/IllegalAccessException.html">IllegalAccessException e) {
28
                    e.printStackTrace();
29
                }
30
            }
31
        }
32
        return super.get(i);
33
    }
34
 
35
    @1.5.0/docs/api/java/lang/Override.html">Override
36
    public void add(int i, E obj) {
37
        if(i >= size())
38
        {
39
            while(i >= size())
40
            {
41
                try {
42
                    super.add((E)referenceClass.newInstance());
43
                } catch (1.5.0/docs/api/java/lang/InstantiationException.html">InstantiationException e) {
44
                    e.printStackTrace();
45
                } catch (1.5.0/docs/api/java/lang/IllegalAccessException.html">IllegalAccessException e) {
46
                    e.printStackTrace();
47
                }
48
            }
49
        }
50
        super.add(i,obj);
51
    }
52
 
53
    @1.5.0/docs/api/java/lang/Override.html">Override
54
    public E set(int i, E obj) {
55
        if(i >= size())
56
        {
57
            while(i >= size())
58
            {
59
                try {
60
                    super.add((E)referenceClass.newInstance());
61
                } catch (1.5.0/docs/api/java/lang/InstantiationException.html">InstantiationException e) {
62
                    e.printStackTrace();
63
                } catch (1.5.0/docs/api/java/lang/IllegalAccessException.html">IllegalAccessException e) {
64
                    e.printStackTrace();
65
                }
66
            }
67
        }
68
        return super.set(i,obj);
69
    }
70
}