CollectionSample.java
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class CollectionSample {
public static void main(String[] args) {
Collection<String> list = new ArrayList<>();
for(int i=0; i<5; i++)
list.add(String.valueOf(i));
Set<String> set = new HashSet<>(list);
for(Iterator<String> i = set.iterator(); i.hasNext(); )
System.out.println(i.next());
}
}
စာကြောင်း ၁၅တွင် ArrayList အော့ဘဂျက် list အား Set အင်တာဖေစ်၏ အော့ဘဂျက်အဖြစ် ပြောင်းလည်းယူ နိုင်သည်ကို တွေ့ရပါသည်။
Collection Interface တွင် ပါဝင်သော လုပ်ဆောင်ချက်များမှာ အောက်ပါအတိုင်း ဖြစ်ကြ၏။
Collection.java
public interface Collection<E> extends Iterable<E> {
// Basic operations
int size();
boolean isEmpty();
boolean contains(Object element);
// optional
boolean add(E element);
// optional
boolean remove(Object element);
Iterator<E> iterator();
// Bulk operations
boolean containsAll(Collection<?> c);
// optional
boolean addAll(Collection<? extends E> c);
// optional
boolean removeAll(Collection<?> c);
// optional
boolean retainAll(Collection<?> c);
// optional
void clear();
// Array operations
Object[] toArray();
<T> T[] toArray(T[] a);
}
ကော်လက်ရှင် အင်တာဖေစ်သည် အချက်အလက် အုပ်စုတစ်စုတွင် ပါဝင်သင့်သော အခြေခံ လုပ်ဆောင်ချက်များဖြင့် ဖွဲ့စည်းထားပါသည်။ Collection Interface ၏ size နှင့် isEmpty လုပ်ဆောင်ချက်ဖြင့် ကော်လက်ရှင်တွင်ပါဝင်သော Element များ၏ ပမာဏကို သိရှိနိုင်ပြီး၊ contains လုပ်ဆောင်ချက်ကို အသုံးပြုပါက Object တစ်ခုသည် Collection အတွင်းတွင် ပါဝင်ခြင်း ရှိမရှိကို သိရှိနိုင်ပါသည်။Collection အတွင်း Element အား ဖြည့်စွက်ရာတွင် add ကို သော်၎င်း၊ ဖယ်ပြစ်ရာတွင် remove ကို အသုံးပြုနိုင်ပါသည်။ Element များအား တစ်ပြိုင်နက်တည်း အသုံးပြုလိုပါက containsAll၊ addAll၊ removeAll၊ retainAll နှင့် clear လုပ်ဆောင်ချက်များအား အသုံးပြုနိုင်ပါသည်။
ကော်လက်ရှင် အတွင်းရှိ Element များအား အသုံးပြုရန် Forဝါကျအား အသုံးပြုနည်းနှင့် Iterator အားအသုံးပြုနည်း ဟူ၍ နည်းလမ်းနှစ်ခု ရှိပါသည်။
CollectionLoopSample.java
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class CollectionLoopSample {
public static void main(String[] args) {
Collection<String> collection = new ArrayList<>();
collection.add("one");
collection.add("two");
collection.add("three");
for(String s : collection)
System.out.println(s);
Iterator<String> itr = collection.iterator();
while(itr.hasNext())
System.out.println(itr.next());
}
}
စာကြောင်း ၁၃တွင် for(String s : collection) ဟု ရေးသားခြင်းအားဖြင့် Collection အော့ဘဂျက် အတွင်းမှ Element များအား String အော့ဘဂျက် s အဖြစ် တစ်ခုချင်းစီ အသုံးပြုနိုင်မည် ဖြစ်သည်။ တဖန် စာကြောင်း ၁၆ကဲ့သို့ Collection#iterator လုပ်ဆောင်ချက်အား အသုံးပြုခြင်းအားဖြင့် Iterator အော့ဘဂျက်ကို ရရှိမည် ဖြစ်ပြီး၊ while ဝါကျကို အသုံးပြု၍ iterator အတွင်း ရှိသမျှ Element များအား တစ်ခုချင်း ထုတ်ယူ အသုံးပြုနိုင်မည် ဖြစ်သည်။တဖန် Collection#toArray လုပ်ဆောင်ချက်အား အသုံးပြုပါက Object [] ၏ ကိန်းစဉ် အော့ဘဂျက်ကို ရရှိနိုင်မည် ဖြစ်ပြီး၊ Collection#toArray(T [] a) အား အသုံးပြုပါက T[] ၏ အော့ဘဂျက်ကို ရရှိမည် ဖြစ်ပါသည်။
No comments:
Post a Comment