জাভা ক্যু: জাভাতে কুই সম্পর্কে আপনার যা কিছু জানা দরকার



এই নিবন্ধে আমরা একটি জনপ্রিয় জাভা ডেটা স্ট্রাকচার নেব যা জাভা কুই হিসাবে পরিচিত। আমরা আরও ভাল বোঝার জন্য উপযুক্ত প্রোগ্রাম্যাটিক উদাহরণ ব্যবহার করব।

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

আমাদের এখন শুরু করা যাক,





জাভাতে কিউ

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

সারি সন্নিবেশ এবং মোছা সহ একাধিক পদ্ধতি সমর্থন করে। Java.util.package এ উপলব্ধ সারিগুলি হিসাবে পরিচিত আনবাউন্ডেড ক্যু , java.util.concurrent প্যাকেজটিতে উপস্থিত সারিগুলি জানা গিয়েছে চৌবাচ্চা সারি।



ডেকস ব্যতীত সমস্ত সারি শেষের দিকে সন্নিবেশ এবং সামনে থেকে মোছা সমর্থন করে। উভয় প্রান্তে উপাদান সন্নিবেশ এবং মোছা সমর্থন করে।

আসুন জাভা কাতারে এই নিবন্ধটির পরবর্তী বিষয়টিতে চলে যাই,

জাভা কাতারের বাস্তবায়ন

সারি ইন্টারফেসটি ব্যবহার করার জন্য, আমাদের একটি কংক্রিট বর্গ ইনস্ট্যান্ট করা দরকার। নিম্নলিখিত কয়েকটি কার্যকর করা যেতে পারে:



  • ব্যবহার.লিঙ্কডলিস্ট
  • use.PriorityQueue

যেহেতু এই প্রয়োগগুলি থ্রেড নিরাপদ নয়, তাই অগ্রাধিকার ব্লকিংকুই থ্রেড নিরাপদ বাস্তবায়নের বিকল্প হিসাবে কাজ করে।

উদাহরণ:

ক্যু Q1 = নতুন লিঙ্কডলিস্ট ()
ক্যু Q2 = নতুন অগ্রাধিকারের কিউ ()

আসুন কয়েকটি জাভা কুইউ পদ্ধতিতে লক করি,

জাভা কাতারে পদ্ধতি

  • যোগ করুন): অ্যাড () পদ্ধতিটি শেষে বা সারির লেজে উপাদান যুক্ত করতে ব্যবহৃত হয়। সংগ্রহটি ইন্টারফেস থেকে উত্তরাধিকার সূত্রে প্রাপ্ত।
  • অফার (): অফার () পদ্ধতিটি অ্যাড () পদ্ধতির চেয়ে বেশি পছন্দনীয়, কারণ এটি কোনও ক্ষমতা সীমাবদ্ধতা লঙ্ঘন না করে নির্দিষ্ট উপাদানটিকে কাতারে সন্নিবেশ করায়।
  • উঁকি দেওয়া (): পিক () পদ্ধতিটি সরিয়ে না রেখে সারির সামনের দিকে তাকানোর জন্য ব্যবহৃত হয়। যদি সারিটি খালি থাকে তবে এটি একটি নাল মান প্রদান করে।
  • উপাদান (): যদি সারিটি খালি থাকে তবে পদ্ধতিটি NoSuchElementException নিক্ষেপ করে।
  • অপসারণ(): অপসারণ () পদ্ধতিটি সারির সামনের অংশটি সরিয়ে আবার তা ফেরত দেয়। NoSuchElementException নিক্ষেপ করে যদি সারিটি খালি থাকে।
  • পোল (): পোল () পদ্ধতিটি সারির শুরুটি সরিয়ে এটিকে ফেরত দেয়। যদি সারিটি খালি থাকে তবে এটি একটি নাল মান প্রদান করে।

নিম্নলিখিত পদ্ধতিগুলির একটি সংক্ষিপ্ত বিবরণ নীচে দেওয়া হল:

অপারেশন

ব্যতিক্রম ছোঁড়ে

মান প্রদান করে

.োকান

যোগ করুন (উপাদান)

অফার (উপাদান)

অপসারণ

অপসারণ()

কীভাবে পাইথনের জন্য পরমাণু ব্যবহার করবেন

পোল ()

পরীক্ষা করা

উপাদান ()

উঁকি দেওয়া ()

আসুন এখন এক নজরে দেখি,

কিউ পদ্ধতিগুলি প্রদর্শনের জন্য প্রোগ্রাম

আমদানি করুন java.util। * পাবলিক ক্লাস মেইন {পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং [] আরগস) {// আমরা কোনও সারি উদাহরণ তৈরি করতে পারি না কারণ এটি একটি ইন্টারফেস, সুতরাং আমরা ক্যু Q1 = নতুন লিংকডলিস্ট () // উপাদান যুক্ত করছি কিউ Q1.add ('আমি') Q1.add ('প্রেম') q1.add ('রক') q1.add ('এবং') q1.add ('রোল') System.out.println ('উপাদানসমূহ) কাতারে: '+ কিউ 1) / * * আমরা সরিয়ে () পদ্ধতিটি ব্যবহার করে কাতার থেকে একটি উপাদান সরিয়ে ফেলতে পারি, * এটি প্রথম উপাদানটিকে কাতুর * / System.out.println থেকে সরিয়ে দেয় (' সরানো উপাদান: '+ + Q1.remove ( )) / * * উপাদান () পদ্ধতি - এটি * কাতারের শিরোনামটি প্রদান করে। * / System.out.println ('Head:' + q1.element ()) / * * পোল () পদ্ধতি - এটি কুইউজের হেডকে সরিয়ে দেয় এবং ফেরত দেয়। কিউ খালি * / System.out.println ('পোল ():' + q1.poll ()) / * * উঁকি দেওয়া () পদ্ধতি থাকলে শূন্য হয়: এটি উপাদান () পদ্ধতি হিসাবে একইভাবে কাজ করে, * তবে এটি ফিরে আসে শূন্য শূন্য থাকলে * / System.out.println ('উঁকি দেওয়া ():' + কিউ 1.পেক ()) // ক্যু সিস্টেম.আউট.প্রিন্টলনের উপাদানগুলি প্রদর্শন করা হচ্ছে ('সারিতে উপাদানসমূহ:' + কিউ 1)} }

আউটপুট:

কাতারে উপাদান: [আমি, প্রেম, রক, এবং রোল]

সরানো উপাদান: আই

মাথা: প্রেম

পোল (): প্রেম

উঁকি দেওয়া (): রক

কাতারে উপাদান: [রক, এবং, রোল]। উপরের উদাহরণে, জেনেরিক ক্যু ব্যবহার করা হয়েছে।

এই ধরণের কাতারে, আমরা কাতারে objectোকানো প্রকারের সীমাটি সীমাবদ্ধ করতে পারি। আমাদের উদাহরণস্বরূপ, আমরা কেবল স্ট্রিং দৃষ্টান্তগুলি সারিতে সন্নিবেশ করতে পারি।

একটি জাভা কাতারে আইট্রেটিং

জাভা সারিতে থাকা উপাদানগুলি নিম্নলিখিত কোড ব্যবহার করে পুনরাবৃত্তি করা যেতে পারে:

ক্যু Q1 = নতুন লিঙ্কডলিস্ট ()

q1.add ('রক')

q1.add ('এবং')

q1.add ('রোল')

// আইট্রেটারের মাধ্যমে অ্যাক্সেস

ইটারেটর পুনরাবৃত্তকারী = q1.iterator ()

যখন (পুনরুক্তিকারী .হাসনেক্সট () {

স্ট্রিং উপাদান = (স্ট্রিং) পুনরুক্তিকারী.নেক্সট ()

}

// নতুন লুপের মাধ্যমে অ্যাক্সেস

(অবজেক্ট অবজেক্ট: কিউ 1) for

স্ট্রিং উপাদান = (স্ট্রিং) অবজেক্ট

}

যে ক্রমটিতে উপাদানগুলি পুনরাবৃত্তি হয় তা সারি প্রয়োগের উপর নির্ভর করে।

জাভা কুইউ প্রয়োগ করতে পারে এমন একাধিক পদ্ধতি রয়েছে, তবে সবচেয়ে গুরুত্বপূর্ণ পদ্ধতিগুলি এখানে আলোচনা করা হয়েছে।

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

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