BitSet
में stream()
विधि है लेकिन यह Iterable
इंटरफ़ेस को अन्य प्रकार की तरह कार्यान्वित नहीं करता है जो इस विधि को प्रदान करता है। क्या इसके लिए कोई विशिष्ट कारण है?बिटसेट क्यों नहीं है?
उत्तर
कोई नहीं (foreach
, iterator
, और spliterator
) BitSet
में प्रदान की जाती है। Iterable
में stream()
विधि नहीं है।
इसके अलावा BitSet
की stream()
विधि बिट सेट के टुकड़े पर एक धारा वापस नहीं करता है, लेकिन (जो एक तरह से TBH भ्रामक) बिट्स जिनके मान सेट कर रहे हैं की सूचकांक पर एक धारा देता है। इसलिए, तकनीकी रूप से बोलते हुए Iterable
के साथ लगभग कुछ भी सामान्य नहीं लगता है।
संभावित रूप से Boolean
उदाहरण पर विस्तार से मुक्केबाजी से बचने के लिए।
अपने स्वयं के एपीआई का उपयोग करके इसे लूपिंग सभी आवंटन से बच जाएगा। Iterable
में तरीकों में से
एक आदिम छोटा हो सकता है मुझे लगता है कि –
@fabienbk: नहीं; जावा आदिम जेनेरिक का समर्थन नहीं करता है। – SLaks
एक बूलियन के लिए बॉक्सिंग वास्तव में सस्ता है: उनमें से केवल दो ही हैं, और वे कैश किए गए हैं। 'स्ट्रीम' रिटर्न 'int' सेट बिट इंडेक्स का प्रतिनिधित्व करता है; मुझे लगता है कि ओपी 'Iterable' को ऐसा करने की अपेक्षा करता है (' इंटेगर' को छोड़कर)। –
BitSet
जावा संग्रह ढांचे का "सत्य" सदस्य नहीं है, इसलिए तकनीकी रूप से, Collection.iterator()
को लागू करने की आवश्यकता नहीं है और एक प्रदान करें।
public class BitSet implements Cloneable, java.io.Serializable
अधिक बिंदु पर, दोनों खराब तरीके से मिलेंगे।
बिटसेट जेनेरिक नहीं है, java.util.Iterator के विपरीत; बिटसेट इटरेटर के विपरीत साइड इफेक्ट्स और यादृच्छिक एड्रेसिंग के लिए विशेष विशेषताओं के साथ विज्ञापन-प्रसार विधियां प्रदान करता है।
एक कारण (संपूर्ण कारण नहीं, शायद) Iterable
अक्षम होगा, क्योंकि बिट इंडेक्स को बॉक्स किया जाना चाहिए; धारा आदिम स्याही का उपयोग करने में सक्षम है।
जैवडोक में वर्णित अनुसार Iterable
का उपयोग किए बिना बिटसेट को फिर से चलाने का एक प्रभावी तरीका है, इसलिए यह वास्तव में आवश्यक नहीं है।
- 1. जावा 'बिटसेट' में `shiftLeft` और` shiftRight` फ़ंक्शन क्यों नहीं हैं?
- 2. जावा बिटसेट उदाहरण
- 3. जावा बिटसेट को डीबी
- 4. परिवर्तनीय आकार बिटसेट
- 5. जावा के बिटसेट
- 6. प्रश्न: कैसे बिटसेट अंदर हैं?
- 7. प्रारंभ में बिटसेट आकार को परिभाषित करें?
- 8. स्कैला म्यूटेबल बिटसेट, उत्परिवर्ती संचालन कहां हैं?
- 9. स्ट्रिंग को बिटसेट में कैसे परिवर्तित करें?
- 10. बूलियन [] बनाम बिटसेट: कौन सा अधिक कुशल है?
- 11. बिटसेट के आकार() विधि का कारण क्या है?
- 12. एसटीएल बिटसेट :: गिनती() विधि का प्रदर्शन क्या है?
- 13. int128_t क्यों नहीं है?
- 14. विकल्प क्यों नहीं है?
- 15. बिटसेट को एक स्पष्ट कलाकार को सेट [Int] के उदाहरण के रूप में क्यों माना जाता है?
- 16. बिट के साथ बिटसेट को कैसे कार्यान्वित करें?
- 17. मैं बाइनरी स्ट्रिंग से बिटसेट कैसे बना सकता हूं?
- 18. थोड़ा वेक्टर (बिटसेट) (जावा में) को कैसे कार्यान्वित करें?
- 19. क्यों अस्थिर पर्याप्त नहीं है?
- 20. ऑब्जेक्ट.गेटटाइप() वर्चुअल क्यों नहीं है?
- 21. jQuery.parseJSON फ़ंक्शन क्यों नहीं है?
- 22. List.toArray() जेनेरिक क्यों नहीं है?
- 23. .Val() फ़ंक्शन क्यों नहीं है?
- 24. java.io.Bits सार्वजनिक क्यों नहीं है?
- 25. क्यों csv.reader पायथन नहीं है?
- 26. मेरा हैश क्यों नहीं है?
- 27. पायथन सेट क्यों नहीं है?
- 28. हेपसेट स्थिर क्यों नहीं है?
- 29. "example.com" क्यों नहीं है "example.com"?
- 30. काम क्यों नहीं सोता है?
ओह, अच्छा बिंदु। मैं अपना प्रश्न संपादित करूंगा। –