জাভা substring() মেথড একটি নির্দিষ্ট স্ট্রিং-এর একটি অংশ রিটার্ন করে। এই মেথড আপনি যে ক্যারেক্টারগুলো একটি স্ট্রিং থেকে রিট্রিভ করতে চান তাদের Стар্ট এবং এন্ড ইনডেক্স ভ্যালু kabul করে। substring() প্রয়োগ করা মূল স্ট্রিং অপরিবর্তিত থাকে।
আপনি একটি জাভা প্রোগ্রামে একটি স্ট্রিং-এর নির্দিষ্ট অংশ রিট্রিভ করতে চাইতে পারেন।
সেখানে জাভা substring() মেথডটি কাজে আসে। substring() মেথড একটি স্ট্রিং থেকে একটি সাবস্ট্রিং রিটার্ন করে একটি নির্দিষ্ট ইনডেক্স ভ্যালু থেকে শুরু করে এবং একটি অপশনাল ইনডেক্স ভ্যালুতে শেষ হয়।
এই টিউটোরিয়ালে জাভাতে substring() মেথড ব্যবহার করার পদ্ধতি এক্সপ্লোর করা হবে, এবং একটি প্রোগ্রামে স্ট্রিং মেথডের কয়েকটি উদাহরণ দেখা যাবে।
জাভা সাবস্ট্রিং সিনট্যাক্স
স্ট্রিং substring() মেথড একটি স্ট্রিং থেকে ক্যারেক্টার সিকোয়েন্স রিট্রিভ করে। এই ক্যারেক্টারগুলো তাদের ইনডেক্স ভ্যালুয়ের উপর ভিত্তি করে রিট্রিভ করা হয়।
substring() মেথড একটি স্ট্রিং-এর শেষে এভাবে প্রয়োগ করা হয়:
public String substring(startIndex, endIndex)
substring() দুটি প্যারামিটার kabul করে:
- start হলো ইনডেক্স পজিশন যেখানে থেকে সাবস্ট্রিং শুরু হবে, এবং এটি ইনক্লूसিভ (প্রয়োজনীয়)
- end হলো ইনডেক্স পজিশন যেখানে সাবস্ট্রিং শেষ হবে এবং এটি এক্সক্লूसিভ। ডিফল্টভাবে, এন্ড ভ্যালু একটি স্ট্রিং-এর দৈর্ঘ্যের সমান। (ঐচ্ছিক)
জাভাতে স্ট্রিংস ইনডেক্সড। এর মানে আপনি একটি নির্দিষ্ট স্ট্রিং থেকে ইনডেক্স নম্বর রেফারেন্স করে পৃথক ক্যারেক্টার রিট্রিভ করতে পারেন।
যদি আপনি একটি স্ট্রিং-এর দৈর্ঘ্যের চেয়ে বড় ইনডেক্স ভ্যালু স্পেসিফাই করেন, একটি StringIndexOutOfBoundsException থ্রো করা হবে। আপনাকে নিশ্চিত করতে হবে যে আপনি স্ট্রিং-এর সঠিক অংশ রিট্রিভ করছেন এই এরর এড়াতে।
জাভা Substring() উদাহরণ
এন্ড ভ্যালু ছাড়া জাভাতে স্ট্রিং সাবস্ট্রিং
ধরা যাক আমরা একটি কফি শপ চালাচ্ছি। একটি অর্ডার প্লেস হওয়ার পর, একটি কম্পিউটার প্রোগ্রামে একটি স্ট্রিং তৈরি হয়। এই স্ট্রিং অর্ডার নম্বর, কফির নাম, এবং কাস্টমারের নাম সংরক্ষণ করে।
আমরা একটি প্রোগ্রাম তৈরি করতে চাই যা আমাদের স্ট্রিং-এ অর্ডার নম্বরের পরে থাকা সব ক্যারেক্টার রিট্রিভ করবে। অর্ডার নম্বর তিন ক্যারেক্টার লং। এই ইনফরমেশন বারিস্টাকে দেওয়া হয়, যিনি কফি অর্ডার তৈরি করবেন।
অর্ডার নম্বরের পরের ক্যারেক্টারগুলো রিট্রিভ করতে, আমরা substring() মেথড ব্যবহার করতে পারি। যেহেতু আমরা একটি নির্দিষ্ট ক্যারেক্টারের পরের সব ক্যারেক্টার রিট্রিভ করছি, আমাদের end প্যারামিটার স্পেসিফাই করার দরকার নেই:
public class GetOrderData {
public static void main(String[] args) {
String order = new String("020 Latte Eileen");
System.out.println(order.substring(3));
}
}
আমাদের কোড রিটার্ন করে: Latte Eileen। আমরা দেখতে পাচ্ছি আমাদের স্ট্রিং স্ট্রিং-এর শেষ ক্যারেক্টার পর্যন্ত বিস্তৃত।
আমরা GetOrderData নামে একটি পাবলিক ক্লাস ডিফাইন করি। এই ক্লাস কাস্টমার কী কফি অর্ডার করেছেন এবং তাদের নাম রিট্রিভ করে। আমরা একটি ভেরিয়েবল ডিফাইন করি যা অর্ডারটি সংরক্ষণ করে। এটি আমাদের কাস্টমারের অর্ডারকে আমাদের কোডে রেফারেন্স করতে দেয়।
তারপর, আমরা substring() মেথড ব্যবহার করে ইনডেক্স ভ্যালু ৩-এর পরের সব ক্যারেক্টার রিট্রিভ করি। এটি ইনডেক্স পজিশন ৩ ইনক্লুসিভ।
শেষে, আমরা printIn() মেথড ব্যবহার করে কাস্টমারের নাম এবং কফি অর্ডার কনসোলে প্রিন্ট আউট করি।
এন্ড ভ্যালুসহ জাভাতে স্ট্রিং সাবস্ট্রিং
ধরা যাক আমরা শুধু কফির অর্ডার নম্বরটি রিট্রিভ করতে চাই, যা তিন অঙ্কের। এটি একটি স্ক্রিনে ডিসপ্লে হয় কাস্টমারের অর্ডার প্রসেস হতে যাচ্ছে তা জানাতে।
অর্ডার নম্বর অর্ডার স্ট্রিং-এর শুরুতে থাকে। অর্ডার নম্বর তিন ক্যারেক্টার লং। আমরা substring() ব্যবহার করে অর্ডার নম্বর রিট্রিভ করতে পারি:
public class GetOrderNumber {
public static void main(String[] args) {
String order = new String("020 Latte Eileen");
System.out.println(order.substring(0, 3));
}
}
আমাদের কোড নিচের আউটপুট রিটার্ন করে: 020।
আমরা substring() মেথড ব্যবহার করে আমাদের স্ট্রিং-এ ইনডেক্স পজিশন ০ এবং ৩-এর মাঝপথের ক্যারেক্টারগুলো রিট্রিভ করি। এই ক্যারেক্টারগুলতে আমরা যে অর্ডার নম্বরটি চাইছি সেটি থাকে।
মনে রাখবেন, স্ট্রিং ইনডেক্স ০ থেকে শুরু হয়। end প্যারামিটার আপনি যে ফাইনাল ভ্যালু স্পেসিফাই করেছেন তার এক্সক্লूसিভ (এই কেসে, ৩)। इसी জন্য আমরা ইনডেক্স ভ্যালু ০ থেকে ৩ স্পেসিফাই করেছি।
উপসংহার
substring() মেথড একটি বিদ্যমান স্ট্রিং থেকে ক্যারেক্টার এক্সট্রাক্ট করে। substring() Стар্ট এবং এন্ড ইনডেক্স ভ্যালু kabul করে যেখানে সাবস্ট্রিং শুরু এবং শেষ হবে, যথাক্রমে। এই মেথড একটি নতুন স্ট্রিং তৈরি করে। এটি একটি বিদ্যমান স্ট্রিং মডিফাই করে না।
আপনি এখন জাভা substring() মেথড আত্মবিশ্বাসের সাথে ব্যবহার করার জন্য সुसজ্জিত! জাভা শিখতে কীভাবে শিখবেন তা জানতে আমাদের গাইড পড়ুন।