প্রোগ্রামাররা বিভিন্ন ধরণের মান সংরক্ষণের জন্য বিভিন্ন ডেটা টাইপ ব্যবহার করে। উদাহরণস্বরূপ, টেক্সট-ভিত্তিক ডেটার জন্য স্ট্রিং এবং পূর্ণসংখ্যার জন্য ইন্টিজার ব্যবহার করা হয়।
কোড লেখার সময় আপনি একটি মানের ডেটা টাইপ অন্য ডেটা টাইপে রূপান্তর করতে চাইতে পারেন। জাভা-তে সবচেয়ে সাধারণ টাইপ রূপান্তর হচ্ছে স্ট্রিংকে ইন্টিজারে রূপান্তর। সেটিই সম্ভব করে parseInt() এবং valueOf() মেথড।
জাভা ডেটা টাইপ
জাভা অন্যান্য প্রোগ্রামিং ল্যাঙ্গুয়েজের মতো বিভিন্ন ডেটা টাইপ ব্যবহার করে মান ধারণ করার ধরন শ্রেণিবদ্ধ করতে। ট্রু/ফাল্স মান বুলিয়ান হিসেবে সংরক্ষিত হয়, এবং টেক্সট স্ট্রিং হিসেবে।
এটি প্রোগ্রামিং-এ গুরুত্বপূর্ণ কারণ একটি মানের ডেটা টাইপ নির্ধারণ করে সেটি কীভাবে ম্যানিপুলেট করা যাবে। উদাহরণস্বরূপ, ইন্টিজার এবং রিয়েল নম্বরের ওপর গাণিতিক অপারেশন করা যায় কিন্তু স্ট্রিংয়ের ওপর না।
প্রোগ্রামিং করার সময় আপনি স্ট্রিংকে ইন্টিজারে রূপান্তর করার পরিস্থিতি সম্মুখীন হতে পারেন। উদাহরণস্বরূপ, যদি একটি সংখ্যা স্ট্রিং হিসেবে সংরক্ষিত থাকে এবং আপনি তার ওপর গাণিতিক অপারেশন করতে চান, তবে ডেটা টাইপ রূপান্তর করতে হবে।
parseInt() ব্যবহার করে স্ট্রিং থেকে ইন্টিজার
জাভা-তে স্ট্রিং থেকে ইন্টিজার রূপান্তর করতে parseInt() মেথড ব্যবহার করা যায়। parseInt() এক প্যারামিটার গ্রহণ করে: যা ইন্টিজারে রূপান্তর করতে চান সেই স্ট্রিং মান।
parseInt() সিনট্যাক্স:
Integer.parseInt(value);
একটি থিম পার্কের প্রোগ্রাম বিবেচনা করুন যা কাস্টমারের বয়স চেক করে। কাস্টমারের বয়স স্ট্রিং হিসেবে সংরক্ষিত, কিন্তু আমরা সেটি ইন্টিজারে রূপান্তর করে ন্যূনতম বয়সের সাথে তুলনা করতে চাই। কাস্টমারের বয়স (এখানে ১৫) ইন্টিজারে রূপান্তর:
class ConvertAge {
public static void main(String[] args) {
String age = "15";
Integer integer_age = Integer.parseInt(age);
System.out.println("This customer's age is: " + integer_age);
}
}
আউটপুট: This customer's age is: 15
কোড ব্যাখ্যা: প্রথমে age স্ট্রিং ভেরিয়েবলে কাস্টমারের বয়স সংরক্ষণ করা হয়েছে। তারপর parseInt() মেথড ব্যবহার করে স্ট্রিংকে ইন্টিজারে রূপান্তর করে integer_age ভেরিয়েবলে রাখা হয়েছে। শেষে মেসেজ প্রিন্ট করা হয়েছে।
ডেটা টাইপ যাচাই করতে instanceof কিওয়ার্ড ব্যবহার করা যায়। এটি বুলিয়ান মান (true/false) ফেরত দেয়:
System.out.println("Is age an integer? " + (integer_age instanceof Integer));
আউটপুট: Is age an integer? true
valueOf() ব্যবহার করে স্ট্রিং থেকে ইন্টিজার
valueOf() মেথডও স্ট্রিংকে ইন্টিজারে রূপান্তর করতে ব্যবহৃত হয়। এটি এক প্যারামিটার গ্রহণ করে: যা ইন্টিজারে রূপান্তর করতে চান সেই মান।
valueOf() সিনট্যাক্স:
Integer.valueOf(value);
একটি কফি শপের প্রোগ্রাম বিবেচনা করুন যেখানে কোলাম্বিয়ান এবং ইট্যালিয়ান রোস্ট কফি বিনের পরিমাণ স্ট্রিং হিসেবে সংরক্ষিত। এগুলো ইন্টিজারে রূপান্তর:
class ConvertQuantities {
public static void main(String[] args) {
String columbian = "15";
String italian_roast = "19";
Integer columbian_integer = Integer.valueOf(columbian);
Integer italian_roast_integer = Integer.valueOf(italian_roast);
System.out.println("Quantity of Columbian coffee beans: " + columbian_integer);
System.out.println("Quantity of Italian roast coffee beans: " + italian_roast_integer);
}
}
আউটপুট:
Quantity of Columbian coffee beans: 15
Quantity of Italian roast coffee beans: 19
কোড ব্যাখ্যা: columbian এবং italian_roast ভেরিয়েবলে স্ট্রিং মান রাখা হয়েছে। valueOf() মেথড ব্যবহার করে সেগুলো ইন্টিজারে রূপান্তর করে নये ভেরিয়েবলে সংরক্ষণ করা হয়েছে। তারপর ইন্টিজার মানগুলো প্রিন্ট করা হয়েছে।
উপসংহার
জাভা-তে স্ট্রিংকে ইন্টিজারে রূপান্তর করার দুটি পদ্ধতি: parseInt() এবং valueOf() মেথড। এই টিউটোরিয়ালে জাভা ডেটা টাইপের বেসিকস এবং উভয় মেথডের উদাহরণ সহ ব্যবহার আলোচনা করা হয়েছে। এখন আপনি জাভা-তে স্ট্রিংকে ইন্টিজারে রূপান্তর করতে পারবেন এক্সপার্টের মতো!