Stream হিসাবে String chars (String chars as stream)
স্ট্রিং ক্যারেক্টারগুলোকে (string characters) একটি স্ট্রিম পাইপলাইন (stream pipeline) হিসাবে প্রসেস করুন।
কোড তুলনা
✕ Java 8
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (Character.isDigit(c)) {
process(c);
}
}
✓ Java 9+
str.chars()
.filter(Character::isDigit)
.forEach(c -> process((char) c));
এই কোডে সমস্যা দেখছেন? আমাদের জানান।
কেন আধুনিক পদ্ধতি ভালো
চেইনেবল (Chainable)
ক্যারেক্টার স্ট্রিমগুলোতে filter, map, collect ব্যবহার করুন।
ডিক্লারেটিভ (Declarative)
কী করতে হবে তা বর্ণনা করুন, কিভাবে লুপ করতে হবে তা নয়।
ইউনিকোড-রেডি (Unicode-ready)
codePoints() মেথডটি ইমোজি (emoji) এবং সাপ্লিমেন্টারি ক্যারেক্টারগুলো (supplementary chars) সঠিকভাবে হ্যান্ডেল করে।
পুরনো পদ্ধতি
ম্যানুয়াল লুপ
আধুনিক পদ্ধতি
chars() Stream
JDK থেকে
9
কঠিনতা
প্রাথমিক
JDK সমর্থন
Stream হিসাবে String chars (String chars as stream)
উপলব্ধ
JDK 8+ থেকে উপলব্ধ (9+ এ উন্নত)
কীভাবে কাজ করে
String.chars() মেথডটি ক্যারেক্টার ভ্যালুগুলোর একটি IntStream রিটার্ন করে, যা ফাংশনাল প্রসেসিং সক্ষম করে। ইউনিকোড সাপোর্টের জন্য, codePoints() মেথডটি সাপ্লিমেন্টারি ক্যারেক্টারগুলোকে (supplementary characters) সঠিকভাবে হ্যান্ডেল করে।
সম্পর্কিত ডকুমেন্টেশন
প্রমাণ