Set zinafanan sana na list ila kuna utofauti katika matumizi, kwanza seti hutumia mabano {}, pia set data zake ni unique yaani haziakiwi kujirudia,, pia data kwenye set zinakuwa katuka aina moja ya data, huwezi kuchanganya namba na string.
Katika somo hili tutatumia string ya somo lililopita ili kufanyia mazoezi.
{'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'}
Mfano
void main(){
var text1 = <String> {'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'};
print(text1);
}
Hii itatupa matokeo
{bongoclass, facebook, google, youtube, microsoft}
Apo utaona kuna kitu kipya <String> hii hutumika kuonyesha aina ya data anbayo ipo kwenye set.
Methos zinazotumika:
Method zinazotumika katika set hufanana na zile ambazo tumezona kwenye list. Hapa nitakuorodheshea tu chache.
- add()
- addAll()
- elementAt()
- Contains
- remove()
- forEach
- clear()
1. elementAt() hii hutumika katika ku display item kwa kuangalia index yake. Ni sawasawa na kutumia index kama tulivyojifunza huko nyuma. Hapa nitakupa mifano miwili
void main(){
var text1 = <String> {'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'};
print(text1.elementAt(3));
}
2.clear() hii hutumika kufuta item zote kwenye set husika, na ku display empty set.
void main(){
var text1 = <String> {'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'};
text1.clear();
print(text1);
}
Set operation
Hapa tunakwenda kufanya matendo ya set, hizi ni hesabu maalumu ambazo hutumiwa kwenye set data type. Matendo haya ni:-
- Union
- Intesection
- substracting
Union hii huhusika na kuunganisha set mbili ili kupata set moja.
void main(){
var set1 = <String> {'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'};
var set2 = <String> {'Whatsapp', 'Telegram', 'Instagram'};
print(set1.union(set2));
}
Hii itatupa matokeo haya
{bongoclass, facebook, google, youtube, microsoft, Whatsapp, Telegram, Instagram}
intersection() hii itatupa matokeo ya set ambayo imeudwa kwa item ambazo zinapatikana kwenye set zote mbili, yaanikwa ufupi ni kuwa intersection itakupa item ambazo zipo kwenye set zote mbili.
void main(){
var set1 = <String> {'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'};
var set2 = <String> {'Whatsapp', 'facebook', 'Instagram', 'twitter', 'bongoclass'};
print(set1.intersection(set2));
}
Bongoclass na facebook zimetokea kwenye set zote mbili hivyo hizo ndio zipo kwenye intersection, huku zipo na kule zipo.
Substraction hii hufanyika kwa kutumia method diference() kazi yake ni kuonyesha item ambazo zipo kwenye list ya kwaza lakini hazipo kwenye list ya pili.
void main(){
var set1 = <String> {'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'};
var set2 = <String> {'Whatsapp', 'facebook', 'Instagram', 'twitter', 'bongoclass'};
print(set1.difference(set2));
}
Hizo hapo tatu hazipomkwenye set2 ila zipo kwenye set1
void main(){
var set1 = <String> {'bongoclass', 'facebook', 'google', 'youtube', 'microsoft'};
var set2 = <String> {'Whatsapp', 'facebook', 'Instagram', 'twitter', 'bongoclass'};
print(set2.difference(set1));
}
Hizo hapo hazipo kwenye set1 ila zipo kwenye set2.
Set properties
Properties za set ni sawa na zile za kwenye list:-
a.isNotEmpty
b.length
c.last
d.hashcode
e. single
Mwisho:
Somo linalofuata tutakwenda kuangalia method zinazotumika kwenye map data type.