ગણન અને ઇથરીએટર વચ્ચેના તફાવત

Anonim

ગણન વિ ઇટરરેટર

ઘણાં ડેટા માળખાં છે જે જાવા જેમ કે વેક્ટરો, હૅશ કોષ્ટકો અને વર્ગો કે જે જાવા અમલમાં મૂકે છે સંગ્રહોનું ફ્રેમવર્ક (એટલે ​​કે હેશમેપ, હાશેટ, અરેલીસ્ટ, ટ્રીસેસેટ, ટ્રીમેપ, લિન્ક્ડલિસ્ટ, લિન્ક્ડહેશમેપ અને લિન્ક્ડહેશેટ) Java માં ઑબ્જેક્ટ્સનાં વ્યક્તિગત ઘટકો દ્વારા પુનરાવર્તન કરવાની અસંખ્ય રીતો છે. જાવા આ કાર્યને વધુ સરળ બનાવવા માટે બે ઇન્ટરફેસો પૂરા પાડે છે. ગણના અને ઇટરએટર જાવામાં મળેલી બે ઇન્ટરફેસ છે. યુઝ પેકેજ કે જે વસ્તુઓના સમૂહ સાથે સિક્વન્સ અથવા ઑબ્જેક્ટ્સ દ્વારા ગણતરી કરવા માટે વિધેય પૂરા પાડે છે. એનડીએમેટર જેડીકે 1 માં રજૂ કરવામાં આવ્યું હતું. 0 અને ઇટરએટર જે જેડીકે 1 માં રજૂ કરવામાં આવ્યું હતું. 2. ગણતરી કરનારની કાર્યક્ષમતા (કલેક્શન ફ્રેમવર્કની અંદર) વર્ચ્યુઅલ ડુપ્લિકેટ્સ.

ગણના શું છે?

જાવા જાવા એક જાહેર ઇન્ટરફેસ છે, જેને જેડીકે 1 માં રજૂ કરવામાં આવ્યું છે. 0, જે ઘટકોની સિક્વન્સ દ્વારા ગણતરી કરવાની ક્ષમતા પૂરી પાડે છે. તે જાવા હેઠળ જોવા મળે છે ઉપયોગ પેકેજ જયારે ગણના ઇન્ટરફેસ ઑબ્જેક્ટ દ્વારા લાગુ કરવામાં આવે છે, ત્યારે તે ઑબ્જેક્ટ તત્વોનું અનુક્રમ પેદા કરી શકે છે. ગણના ઇન્ટરફેસમાં બે પદ્ધતિઓ છે પદ્ધતિમાં વધુ ઍલેલેટ્સ () પરીક્ષણ કરશે જો આ ગણતરીમાં વધુ ઘટકો છે અને આગામી એલેપ્ટેશન () અનુક્રમમાં આગામી ઘટક આપે છે (જો ત્યાં ઓછામાં ઓછો એક વધુ જવાનો હોય). બીજા શબ્દોમાં કહીએ તો, આગામી એલેમેંટ () ને કૉલ કરીને, ક્રમિક રીતે, પ્રોગ્રામર શ્રેણીના વ્યક્તિગત તત્વોને ઍક્સેસ કરી શકે છે. ઉદાહરણ તરીકે, વેક્ટર V1 ના બધા તત્વોને એન્યુમેટરની મદદથી છાપવા માટે, નીચેના કોડ સ્નિપેટનો ઉપયોગ કરી શકાય છે.

ગણતરી અને = v1. તત્વો ();

જ્યારે (ઇ. મૉરેલિમેન્ટ્સ ()) {

સિસ્ટમ આઉટ println (ઇ. આગામીઅલમેન્ટ ());

}

સિક્વેન્સ ઇનપુટ સ્ટ્રીમ ઑબ્જેક્ટ્સમાં ઇનપુટની સ્ટ્રીમને વ્યાખ્યાયિત કરવા માટે એન્યુમેટરનો ઉપયોગ કરી શકાય છે.

ઇટરએટર શું છે?

ઇટરએટર જાવા એક સાર્વજનિક ઈન્ટરફેસ છે. ઉપ પેકેજ, જે સંગ્રહોના પદાર્થોના તત્વો દ્વારા પુનરાવર્તન કરવાની મંજૂરી આપે છે જે સંગ્રહોના માળખાનો અમલ કરે છે (જેમ કે અરેલીસ્ટ, લિન્ક્ડલિસ્ટ, વગેરે.) આ JDK 1 માં રજૂ કરવામાં આવ્યું હતું. 2 અને જાવા સંગ્રહો ફ્રેમવર્કમાં એન્જીમેટરને બદલ્યું છે. ઇએટેરરે ત્રણ પદ્ધતિઓ છે. પદ્ધતિમાં આગલો () પરીક્ષણો છે કે શું સંગ્રહમાં બાકી તત્વો છે અને આગામી () પદ્ધતિ શ્રેણીમાં આગલા ઘટક આપે છે. અંતર્ગત સંગ્રહમાંથી વર્તમાન ઘટક દૂર કરવા માટે દૂર () પદ્ધતિનો ઉપયોગ કરી શકાય છે. ઉદાહરણ તરીકે, ઇટરએટરનો ઉપયોગ કરીને વેક્ટર વી 1 માંના બધા ઘટકોને છાપવા માટે, નીચેના કોડ સ્નિપેટનો ઉપયોગ કરી શકાય છે.

ઇટરએટર આઇ = વી 1. તત્વો ();

જ્યારે (મેં hasNext ()) {

સિસ્ટમ. આઉટ println (ઈઝ આગામી ());

}

ગણન અને ઇટરએટર વચ્ચે શું તફાવત છે?

જોકે, ગણના અને ઇટરએટર જાવામાં મળેલી બે ઇન્ટરફેસ છે.યુઝ પેકેજ, જે શ્રેણીઓના તત્વો દ્વારા પુનરાવર્તન / ગણતરી કરવા માટે પરવાનગી આપે છે, તેઓ તેમના તફાવતો ધરાવે છે. વાસ્તવમાં, ઇથરએટર, કે જે ગણના પછી રજૂ કરવામાં આવી હતી, જાવા કલેક્શન ફ્રેમવર્કની અંદર ગણના બદલે છે. ઇન્વરેટેશનથી વિપરીત, ઇટરએટર નિષ્ફળ-સલામત છે આનો અર્થ એ છે કે ઇંડરએટરનો ઉપયોગ કરવામાં આવે ત્યારે સહવર્તી ફેરફારો (અંતર્ગત સંગ્રહમાં) મંજૂરી નથી. મલ્ટી-થ્રેડેડ વાતાવરણમાં આ ખૂબ જ ઉપયોગી છે, જ્યાં હંમેશા સહવર્તી ફેરફારોનું જોખમ રહેલું છે. સમન્વયમાં ફેરફારની ઘટનામાં, ઇટરએટર ઑબ્જેક્ટ સમાવિષ્ટિકરણ ધારણાને ફેંકી દેશે. ઇનાટેરેટરની સરખામણીએ નાનું પાયાના નામો છે. વળી, પુનરાવર્તન દરમિયાન ઘટકોને કાઢી નાખવાની વધારાની કાર્યપદ્ધતિ છે (જે ગણના કરનાર દ્વારા શક્ય નથી). તેથી, જો સંગ્રહમાંથી ઘટકોને દૂર કરવાની જરૂર હોય તો ઇયેટરર એકમાત્ર વિકલ્પ છે જેને ગણી શકાય.