-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathObjectArray.java
More file actions
31 lines (31 loc) · 891 Bytes
/
ObjectArray.java
File metadata and controls
31 lines (31 loc) · 891 Bytes
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
package io.github.xycabcd.util;
//An Wrapper class for arrays
public class ObjectArray<T> implements Iterable<T>, Cloneable, java.util.RandomAccess {
protected final T[] data;
public ObjectArray(int length) {
data = (T[]) new Object[length];
}
public ObjectArray(T[] initial) {
data = initial.clone();
}
public void set(int i, T d) {
data[i] = d;
}
public T get(int i) {
return data[i];
}
public java.util.Iterator<T> iterator() {
return new ObjectArrayIterator<T>(data);
}
public String toString() {
String result = "{";
for(int i = 0;i <= data.length-2;i++) {
T a = data[i];
result = result + a.toString();
result = result + ",";
}
result = result + data[data.length-2];
result = result + "}";
return result;
}
}