-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy patharraylist.java
More file actions
103 lines (84 loc) · 2.33 KB
/
arraylist.java
File metadata and controls
103 lines (84 loc) · 2.33 KB
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
import java.util.Arrays;
public class arraylist<E>
{
//Size of list
private int size = 0;
//Default capacity of list is 10
private static final int DEFAULT_CAPACITY = 10;
//This array will store all elements added to list
private Object elements[];
//Default constructor
public arraylist() {
elements = new Object[DEFAULT_CAPACITY];
}
//Add method
public void add(E e) {
if (size == elements.length) {
ensureCapacity();
}
elements[size++] = e;
}
//Get method
@SuppressWarnings("unchecked")
public E get(int i) {
if (i >= size || i < 0) {
throw new IndexOutOfBoundsException("Index: " + i + ", Size " + i);
}
return (E) elements[i];
}
//Remove method
@SuppressWarnings("unchecked")
public E remove(int i) {
if (i >= size || i < 0) {
throw new IndexOutOfBoundsException("Index: " + i + ", Size " + i);
}
Object item = elements[i];
int numElts = elements.length - ( i + 1 ) ;
System.arraycopy( elements, i + 1, elements, i, numElts ) ;
size--;
return (E) item;
}
//Get Size of list
public int size() {
return size;
}
//Print method
@Override
public String toString()
{
StringBuilder sb = new StringBuilder();
sb.append('[');
for(int i = 0; i < size ;i++) {
sb.append(elements[i].toString());
if(i<size-1){
sb.append(",");
}
}
sb.append(']');
return sb.toString();
}
private void ensureCapacity() {
int newSize = elements.length * 2;
elements = Arrays.copyOf(elements, newSize);
}
}
public class Main
{
public static void main(String[] args)
{
arraylist<Integer> list = new arraylist<>();
//Add elements
list.add(1);
list.add(2);
list.add(3);
System.out.println(list);
//Remove elements from index
list.remove(2);
System.out.println(list);
//Get element with index
System.out.println( list.get(0) );
System.out.println( list.get(1) );
//List Size
System.out.println(list.size());
}
}