Listওপির বক্তব্য অনুসারে যদি একটি শেষ লক্ষ্য হয় তবে ইতিমধ্যে স্বীকৃত উত্তরটি এখনও সবচেয়ে সংক্ষিপ্ত এবং সেরা। তবে আমি জাভা 8 স্ট্রিম ব্যবহার করে বিকল্পগুলি সরবরাহ করতে চাই , এটি যদি আরও প্রক্রিয়াজাতকরণের জন্য পাইপলাইনের অংশ হয় তবে আপনাকে আরও বেশি সুবিধা দেবে।
.স্প্লিট ফাংশন (একটি নেটিভ অ্যারে) এর ফলাফলটিকে একটি স্ট্রিমে মোড়ানো এবং তারপরে একটি তালিকায় রূপান্তর করে।
List<String> list =
Stream.of("a,b,c".split(","))
.collect(Collectors.toList());
যদি ফলাফলটি ArrayListওপি থেকে শিরোনাম অনুযায়ী সংরক্ষণ করা জরুরী হয় তবে আপনি আলাদা Collectorপদ্ধতি ব্যবহার করতে পারেন :
ArrayList<String> list =
Stream.of("a,b,c".split(","))
.collect(Collectors.toCollection(ArrayList<String>::new));
বা রেজিএক্স পার্সিং এপিআই ব্যবহার করে:
ArrayList<String> list =
Pattern.compile(",")
.splitAsStream("a,b,c")
.collect(Collectors.toCollection(ArrayList<String>::new));
নোট করুন যে আপনি এখনও listভেরিয়েবলের List<String>পরিবর্তে টাইপ করার কথা বিবেচনা করতে পারেন ArrayList<String>। জেনেরিক ইন্টারফেস বাস্তবায়নের জন্য Listএখনও যথেষ্ট পরিমাণে সমান দেখায় ArrayList।
তাদের দ্বারা, এই কোড উদাহরণগুলি খুব বেশি যুক্ত হবে না বলে মনে হয় (আরও বেশি টাইপিং বাদে) তবে আপনি যদি আরও কিছু করার পরিকল্পনা করছেন তবে এই স্ট্রিংকে লংসের উদাহরণের তালিকায় রূপান্তর করার মতো উত্তরটি প্রবাহিত করে, স্ট্রিমিং এপিআই সত্যই শক্তিশালী একের পর এক আপনার কাজগুলি পাইপলাইন করতে।
এর জন্য, আপনি জানেন, সম্পূর্ণতা।