জাভাতে হ্যাশসেট কী এবং এটি দিয়ে কীভাবে শুরু করবেন তা শিখুন!

জাভাতে হ্যাশসেট সম্পর্কিত এই নিবন্ধটি আপনাকে জাভাতে হ্যাশসেটটি ঠিক কী এবং কীভাবে এটি প্রয়োগ করতে হবে তার একটি সম্পূর্ণ ওভারভিউ দেয়। এটি জাভা হ্যাশসেট ক্লাস দ্বারা সমর্থিত বিভিন্ন পদ্ধতি এবং কনস্ট্রাক্টর সম্পর্কেও কথা বলবে।

জাভাতে হ্যাশসেট অন্যতম গুরুত্বপূর্ণ বিষয় । এটি সাধারণত অনিয়ন্ত্রিত পদ্ধতিতে অনন্য মান সংরক্ষণ করতে ব্যবহৃত হয়। জাভাতে হ্যাশসেটে এই নিবন্ধটির মাধ্যমের মাধ্যমে, আমি আপনাকে হ্যাশসেটটি ঠিক কী এবং আপনার অ্যাপ্লিকেশনটিতে আপনি এটি কীভাবে ব্যবহার করতে পারেন তার একটি সম্পূর্ণ ওয়াকথ্রূ প্রদান করব।



নীচে এই নিবন্ধে বিষয়গুলি অন্তর্ভুক্ত করা হয়েছে:



আসুন প্রথমে জাভাতে হ্যাশসেট কী তা বুঝতে পেরে শুরু করা যাক।

সি ++ মার্জ সাজানোর কোড code

জাভায় হ্যাশসেট



java.util.HashSet ক্লাস যা জাভা সংগ্রহের কাঠামোর একটি সদস্যঅ্যাবস্ট্রাকসেট বর্গ উত্তরাধিকারসূত্রে প্রাপ্ত এবংপ্রয়োগ করেসেট ইন্টারফেস । এটি অনন্য উপাদানগুলির সংগ্রহ তৈরি এবং সংরক্ষণের জন্য স্পষ্টতই একটি হ্যাশটেবল প্রয়োগ করে। হ্যাশটেবল হ্যাশমে্যাপ শ্রেণীর একটি উদাহরণ যা হ্যাশসেটের মধ্যে তথ্য সংরক্ষণের জন্য একটি হ্যাশিং প্রক্রিয়া ব্যবহার করে of

হ্যাশিং হ'ল তথ্য সামগ্রীকে একটি অনন্য মান হিসাবে রূপান্তর করার প্রক্রিয়া যা হ্যাশ কোড হিসাবে বেশি পরিচিত popular এই হ্যাশকোডটি কী এর সাথে সম্পর্কিত ডেটা সূচিকরণের জন্য ব্যবহৃত হয়। তথ্য কীটি হ্যাশকোডে রূপান্তরকরণের পুরো প্রক্রিয়াটি অভ্যন্তরীণভাবে সঞ্চালিত হয়।

এখন জাভায় হ্যাশসেটের আরও ভাল বোঝার জন্য আমাকে এর কয়েকটি বৈশিষ্ট্য তালিকাভুক্ত করতে দিন:



  1. জাভাতে একটি হ্যাশসেট সদৃশ মানকে অনুমতি দেয় না।
  2. এটি নাল মান থাকতে পারে।
  3. হ্যাশসেট তথ্য সংরক্ষণের জন্য সন্নিবেশ ক্রমটি অনুসরণ করে না বরং এটির মধ্যে মানগুলি সূচীকরণের জন্য হ্যাশকোড ব্যবহার করে।
  4. এটি অ- সিঙ্ক্রোনাইজড যা স্বয়ংক্রিয়ভাবে এটিকে থ্রেড-অনিরাপদ করে তোলে।
  5. হ্যাশসেট বর্গ ক্লোনযোগ্য এবং কার্যকর করেসিরিয়ালাইজযোগ্য ইন্টারফেস।

এখন আপনি জাভাতে হ্যাশসেটটি কী তা সম্পর্কে অবগত রয়েছেন, আসুন এই নিবন্ধটি দিয়ে আরও সরানো যাক এবং জাভায় হ্যাশম্যাপ এবং হ্যাশসেটের মধ্যে পার্থক্যটিকে নির্মূল করুন।

জাভা হ্যাশসেট বনাম হ্যাশম্যাপ

হ্যাশসেট হ্যাশ মানচিত্র
কার্যকরjava.util।ইন্টারফেস সেট করুনকার্যকরjava.util.Map
অবজেক্ট হিসাবে ডেটা সঞ্চয় করেকী-মান জুটির আকারে ডেটা সঞ্চয় করে
হ্যাশসেটের তার অবজেক্টের সূচনা করার জন্য একটি মাত্র প্যারামিটার প্রয়োজনএর অবজেক্টের সূচনা করার জন্য এটি দুটি পরামিতি (কী, মান) প্রয়োজন
সদৃশ উপাদানগুলিকে অনুমতি দেয় নাসদৃশ কীগুলিকে অনুমতি দেয় না তবে আপনি সদৃশ মান সংরক্ষণ করতে পারেন
একটি একক নাল মানকে অনুমতি দেয়একটি একক নাল কী এবং যে কোনও নাল মানকে মঞ্জুরি দেয়
হ্যাশসেট ব্যবহার অ্যাড ()ডেটা যুক্ত বা সঞ্চয় করার পদ্ধতিডেটা সংরক্ষণের জন্য হ্যাশম্যাপের ব্যবহার পুট () পদ্ধতি

এখন আপনার হ্যাশম্যাপ এবং হ্যাশসেটের মধ্যে স্পষ্ট পার্থক্য রয়েছে, আসুন এখন আবার হ্যাশসেটে ফোকাস করুন এবং এর আরও গভীর দিকে ডুব দিন। এই নিবন্ধের পরবর্তী বিভাগে, আমি আপনাকে জাভায় হ্যাশসেটের সম্পূর্ণ শ্রেণিবিন্যাসের সাথে পরিচয় করিয়ে দেব।

জাভায় হ্যাশসেট হায়ারার্কি

আপনি নীচের প্রদত্ত চিত্রটি দেখতে পাচ্ছেন,হ্যাশসেট বর্গ সেট ইন্টারফেস প্রয়োগ করে। সেট ইন্টারফেসটি আরও একটি কালেকশন ইন্টারফেস উত্তরাধিকার সূত্রে প্রাপ্ত যা অবশেষে শ্রেণিবদ্ধ ক্রমে Iteable ইন্টারফেস প্রসারিত করে।

জাভা উদাহরণে এক্সএমএল ফাইল পড়ুন

জাভা হ্যাশসেট হায়ারার্কি - জাভায় হ্যাশসেট - এডুরেকা

এখন, জাভা নিবন্ধে এই হ্যাশসেটটি নিয়ে এগিয়ে চলুন, আসুন আমরা বিভিন্নগুলি পরীক্ষা করে দেখি কনস্ট্রাক্টর এই বর্গ দ্বারা সমর্থিত।

Java.util.HashSet শ্রেণীর নির্মাতারা

নির্মাতা বর্ণনা
হ্যাশসেট () এটি হ্যাশসেট শ্রেণীর ডিফল্ট নির্মাতা
হ্যাশসেট (ইনট ক্ষমতা) এই কনস্ট্রাক্টরটি হ্যাশ সেটটির প্রাথমিক ক্ষমতা শুরু করতে ব্যবহৃত হয়। ক্ষমতা নতুন উপাদান যোগ করে গতিশীল বৃদ্ধি করতে পারে
হ্যাশসেট (ইনট ক্ষমতা, ফ্লোট লোড ক্যাপাসিটি) এই কনস্ট্রাক্টরটি লোড ক্ষমতার সাথে হ্যাশ সেটটির প্রাথমিক ক্ষমতা শুরু করতে ব্যবহৃত হয়
হ্যাশসেট (সংগ্রহ গ) এই কনস্ট্রাক্টরটি আরম্ভ করার জন্য ব্যবহৃত হয়সংগ্রহ থেকে উপাদানগুলি ব্যবহার করে সেট করা হ্যাশ সি

এগুলি হ্যাশসেট শ্রেণীর চারটি নির্মাণকারী ছিল । আসুন এখন কী কী বিভিন্ন তা খুঁজে বার করুন জাভা হ্যাশসেটে সংজ্ঞায়িত।

Java.util.HashSet Class এর পদ্ধতি

পদ্ধতি বর্ণনা
বুলিয়ান অ্যাড (অবজেক্ট আপত্তি) এই পদ্ধতিটি যদি উপস্থিত না থাকে কেবলমাত্র হ্যাশসেটে একটি নির্দিষ্ট উপাদান যুক্ত করতে সহায়তা করে
অকার্যকর পরিষ্কার () এই পদ্ধতিটি হ্যাশসেট থেকে সমস্ত উপাদান সরিয়ে ফেলতে সহায়তা করে
অবজেক্ট ক্লোন () এই পদ্ধতিটি হ্যাশসেট উপাদানগুলির ক্লোনগুলির চেয়ে হ্যাশসেট উদাহরণের অগভীর অনুলিপি দেয়
বুলিয়ান থাকে (অবজেক্ট ও) উত্তীর্ণ উপাদান হ্যাশসেটের মধ্যে উপস্থিত থাকলে এই পদ্ধতিটি সত্য ফিরে আসে
বুলিয়ান ইম্পিটি () হ্যাশসেটটি খালি থাকলে এই পদ্ধতিটি সত্য হয়
Iterator পুনরুক্তি () এই পদ্ধতিটি হ্যাশসেটে উপস্থিত উপাদানগুলির উপর একটি পুনরাবৃত্তি প্রদান করে
বুলিয়ান অপসারণ (অবজেক্ট ও) এই পদ্ধতিটি যদি উপস্থিত থাকে তবে হ্যাশসেট থেকে নির্দিষ্ট উপাদানটিকে সরিয়ে ফেলতে সহায়তা করে
ইনট আকার () এই পদ্ধতিটি হ্যাশসেটে উপস্থিত মোট উপাদানের সংখ্যা প্রদান করে

উপরের তালিকাভুক্ত পদ্ধতির পাশাপাশি জাভাতে হ্যাশসেট শ্রেণিতেও রয়েছে এর সুপারক্লাস থেকে।

আসুন এখন এই পদ্ধতিগুলি বাস্তবায়নের চেষ্টা করি এবং কোডিং দিয়ে আমাদের পা ভিজা করি।

জাভা প্রোগ্রামে হ্যাশসেট বাস্তবায়ন করা হচ্ছে

নীচের উদাহরণে, আমরা চেষ্টা করব এবং হ্যাশসেট বর্গ দ্বারা সরবরাহিত বেশ কয়েকটি পদ্ধতি প্রয়োগ করব।

আমদানি করুন java.util.HashSet আমদানি java.util। * পাবলিক ক্লাসের নমুনা হ্যাশসেট {পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং [] আরগস) a // হ্যাশসেট সেট তৈরি করা হচ্ছে eduCourses = নতুন হ্যাশসেট () // হ্যাশসেট eduCourses.add এ নতুন উপাদান যুক্ত করা ('বিগ ডেটা') eduCourses.add ('নোড.জেএস') eduCourses.add ('জাভা') eduCourses.add ('পাইথন') eduCourses.add ('ব্লকচেইন') eduCourses.add ('জাভাস্ক্রিপ্ট') eduCourses। যোগ করুন ('সেলেনিয়াম') eduCourses.add ('AWS') eduCourses.add ('মেশিন লার্নিং') eduCourses.add ('আরপিএ') // ডুপ্লিকেট উপাদান যুক্ত করা উপেক্ষা করা হবে eduCourses.add ('জাভা') eduCourses.add ('আরপিএ') System.out.println (eduCourses) // হ্যাশসেটে একটি নির্দিষ্ট উপাদান স্ট্রিং মাইকোর্স = 'নোড.জেএস' রয়েছে কিনা তা পরীক্ষা করুন (eduCourses.contains (মাইকোর্স))। System.out.println (মাইকোর্স + ' পাঠ্যক্রমের তালিকায় রয়েছে। ')} অন্যথায় {System.out.println (মাইকোর্স +' কোর্সের তালিকায় নেই ')} // তালিকার তালিকা ব্যবহার করে শিক্ষাক্রেনগুলি বাছাই করা হচ্ছে = নতুন অ্যারেলিস্ট (ইডুকোর্সেস) সংগ্রহসমূহ। (তালিকা) // হ্যাশসেট সিস্টেম.আর.প্রিন্টলন (' তালিকা ব্যবহার করে সাজানো ক্রমে কোর্সগুলি মুদ্রণ করা হচ্ছে: '+ তালিকা) // হ্যাশসেট থেকে আইটেমগুলি সরানো () এডু কোর্সেস.রেমোভ (' পাইথন ') // হ্যাশসেট আইটেমগুলির উপরে আইট্রেটিভ System.out.println (' অপসারণের পরে কোর্স তালিকার উপরে আইট্রেটিং পাইথন: ') আইট্রেটার i = eduCourses.iterator () जबकि (i.hasNext ()) System.out.println (i.next ()) // হ্যাশসেট হ্যাশসেট eduNewCourses এর অন্য একটি অবজেক্ট তৈরি করা = নতুন হ্যাশসেট () eduNewCourses.add ( 'নোড.জেএস') eduNewCourses.add ('পাইথন') eduNewCourses.add ('মেশিন লার্নিং') // হ্যাশসেট eduCourses.removeAll (eduNewCourses) থেকে সমস্ত নতুন উপাদান সরানো হচ্ছে System.out.println ('অপসারণের পরে সমস্ত) পদ্ধতি কোর্স বাকি: '+ এডুকোর্স) // নির্দিষ্ট শর্তের ভিত্তিতে উপাদানগুলি সরানো হচ্ছে eduCourses.removeIf (str-> str.contains (' জাভা ')) System.out.println (' অপসারণের পরে মুছে ফেলা () পদ্ধতি: '+ eduCourses) // eduNewCourses eduCourses.retainAll (eduNewCourses) System.out.println ('হ্যাশসেটের পরে' + 'রেকর্ডএল () ক্রিয়াকলাপে উল্লিখিত eduCourses থেকে উপাদানগুলি সরানো: '+ eduNewCourses) // এডুকুর্সেসক্লায়ার () System.out.println (' ক্লিয়ার () পদ্ধতিতে অনুরোধ করার পরে: '+ এডুকোর্সেস) সেটটিতে থাকা সমস্ত উপাদান মুছে ফেলা হচ্ছে}}

আপনি যখন উপরের কোডটি কার্যকর করবেন, এটি আপনাকে নীচের দেখানো আউটপুট দেবে।

পাইথনে স্প্লিট ফাংশন কীভাবে ব্যবহার করতে হয়

এটির সাথে আমরা এই নিবন্ধটির শেষে এসেছি। আশা করি আমি ধারণাগুলিগুলি খাস্তা এবং পরিষ্কার রাখতে সক্ষম হয়েছি। আপনি সম্পর্কে আরও শিখতে পারেন আমাদের মাধ্যমে যেতে

এখন আপনি জাভাতে হ্যাশসেট কী তা বুঝতে পেরেছেন, এটি পরীক্ষা করে দেখুন এডুরেকা, বিশ্বস্ত জুড়ে 250,000 এরও বেশি সন্তুষ্ট শিক্ষার্থীর নেটওয়ার্ক সহ একটি বিশ্বস্ত অনলাইন লার্নিং সংস্থা by এডুরেকার জাভা জে 2 ইই এবং এসওএ প্রশিক্ষণ এবং শংসাপত্রের কোর্সটি এমন শিক্ষার্থী এবং পেশাদারদের জন্য তৈরি করা হয়েছে যারা জাভা ডেভেলপার হতে চান। কোর্সটি আপনাকে জাভা প্রোগ্রামিংয়ে একটি প্রধান সূচনা দেওয়ার জন্য এবং হাইবারনেট ও স্প্রিংয়ের মতো বিভিন্ন জাভা ফ্রেমওয়ার্কের পাশাপাশি মূল এবং উন্নত জাভা উভয় ধারণার জন্য প্রশিক্ষণের জন্য তৈরি করা হয়েছে।

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে এই 'জাভায় হ্যাশসেট' নিবন্ধের মন্তব্য বিভাগে উল্লেখ করুন এবং আমরা যত তাড়াতাড়ি সম্ভব আপনার কাছে ফিরে আসব।