package com.robert.copy;
import java.util.Arrays;
public class TestBalloon {
public static void main(String[] args) {
int ballonNum = 7;
Balloon[] box1 = new Balloon[ballonNum];
for(int i = 0; i < ballonNum ; i ++) {
box1[i] = new Balloon(Color.values()[i], i);
}
// Balloon[] box2 = Arrays.copyOf(box1, box1.length); shallow copy
Balloon[] box2 = new Balloon[box1.length];
for(int i = 0; i< box1.length; i++) {
box2[i] = new Balloon(box1[i].getColor(), box1[i].getId());
}
box2[6].setColor(Color.Blue);
for(Balloon b: box1) {
System.out.println(b);
}
}
}
enum Color {
Red,Orange,Yellow,Green,Indigo,Blue,Violet;
}
class Balloon {
private int id;
private Color color;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Color getColor() {
return color;
}
public void setColor(Color color) {
this.color = color;
}
public Balloon(Color _color, int _id) {
color = _color;
id = _id;
}
@Override
public String toString() {
return "Balloon [id=" + id + ", color=" + color + "]";
}
}