问题代码如下:
我有什么办法可以把代码改成可运行的方法,遍历输出集合里内容,要用foreach,不用普通for。
package test;
public class MyCollection<T>{
private ArrayList<T> bucket;//除了继承别人不能用
public MyCollection(){
bucket = new ArrayList();
}
public int size() {
return bucket.size();
}
public boolean isEmpty() {
return bucket.isEmpty();
}
public boolean contains(T o) {
return bucket.contains(o);
}
public boolean add(T e) {
return bucket.add(e);
}
public boolean remove(T o) {
return bucket.remove(o);
}
}
package test;public class ForEachTest {
public static void main(String args[]){
MyCollection<String> myCollection = new MyCollection<String>();
myCollection.add("Java");
myCollection.add("Scala");
myCollection.add("Groovy"); for(String language: myCollection){// myCollection.bucket
System.out.println(language);
}
}
}
我有什么办法可以把代码改成可运行的方法,遍历输出集合里内容,要用foreach,不用普通for。
package test;
public class MyCollection<T>{
private ArrayList<T> bucket;//除了继承别人不能用
public MyCollection(){
bucket = new ArrayList();
}
public int size() {
return bucket.size();
}
public boolean isEmpty() {
return bucket.isEmpty();
}
public boolean contains(T o) {
return bucket.contains(o);
}
public boolean add(T e) {
return bucket.add(e);
}
public boolean remove(T o) {
return bucket.remove(o);
}
}
package test;public class ForEachTest {
public static void main(String args[]){
MyCollection<String> myCollection = new MyCollection<String>();
myCollection.add("Java");
myCollection.add("Scala");
myCollection.add("Groovy"); for(String language: myCollection){// myCollection.bucket
System.out.println(language);
}
}
}
class MyCollection<T> implements Iterable<T>{
private List<T> bucket;//除了继承别人不能用
public MyCollection(){
bucket = new ArrayList<T>();
}
public int size() {
return bucket.size();
}
public boolean isEmpty() {
return bucket.isEmpty();
}
public boolean contains(T o) {
return bucket.contains(o);
}
public boolean add(T e) {
return bucket.add(e);
}
public boolean remove(T o) {
return bucket.remove(o);
} @Override
public Iterator<T> iterator() {
return bucket.iterator();
}
}public class ForEachTest {
public static void main(String args[]){
MyCollection<String> myCollection = new MyCollection<String>();
myCollection.add("Java");
myCollection.add("Scala");
myCollection.add("Groovy"); for(String language: myCollection){// myCollection.bucket
System.out.println(language);
}
}
}