কম্পিউটার

জাভা ব্যবহার করে একটি অ্যারেতে toString পদ্ধতি ওভাররাইড করা কি সম্ভব?


আপনি toString() ওভাররাইড করতে পারেন অবজেক্ট ক্লাসের পদ্ধতি কিন্তু, আপনি যদি একটি নির্দিষ্ট ক্লাসের একটি অবজেক্ট অ্যারে তৈরি করেন এবং এর পরিবর্তে toString() পদ্ধতিটি ওভাররাইড করে এই অ্যারের বিষয়বস্তু মুদ্রণ করতে চান তবে আপনি এটি করতে পারবেন না যে জাভাতে এর জন্য কোন সমাধান নেই এখন থেকে।

কিন্তু আপনি অন্যান্য বিভিন্ন পদ্ধতি ব্যবহার করে এটি অর্জন করতে পারেন −

অ্যারে ক্লাসের toString() পদ্ধতি ব্যবহার করে

toString() Arrays ক্লাসের পদ্ধতি একটি স্ট্রিং অ্যারে (আসলে যে কোনও অ্যারে) গ্রহণ করে এবং এটিকে স্ট্রিং হিসাবে ফেরত দেয়। একটি প্যারামিটার হিসাবে এই পদ্ধতিতে আপনার স্ট্রিং অ্যারে পাস করুন। আপনি সহজভাবে এই পদ্ধতিতে আপনার অবজেক্টের অ্যারে পাস করতে পারেন।

উদাহরণ

import java.util.Arrays;
class Student {
   String name = "Krishna";
   int age = 20;
   Student(String name, int age) {
      this.name = name;
      this.age = age;
   }
   public String toString() {
      return "Name: "+this.name+" "+"Age: "+this.age;
   }
}
public class Example {
   public static void main(String args[]) {
      Student std1 = new Student("Krishna", 20);
      Student std2 = new Student("Radha", 25);
      Student std3 = new Student("Trupthi", 30);
      Student std4 = new Student("David", 35);
      Student std5 = new Student("Moksha", 40);
      Student students[] = {std1, std2, std3, std4, std5};
      System.out.println(Arrays.toString(students));
   }
}

আউটপুট

[Name: Krishna Age: 20, Name: Radha Age: 25, Name: Trupthi Age: 30, Name: David Age: 35, Name: Moksha Age: 40]

অ্যারে ক্লাসের asList() পদ্ধতি ব্যবহার করে

এই পদ্ধতিটি একটি আর্গুমেন্ট হিসাবে একটি অ্যারে গ্রহণ করে এবং একটি তালিকা অবজেক্ট প্রদান করে। একটি অ্যারেকে সেটে রূপান্তর করতে এই পদ্ধতিটি ব্যবহার করুন৷

উদাহরণ

import java.util.Arrays;
class Student {
   String name = "Krishna";
   int age = 20;
   Student(String name, int age) {
      this.name = name;
      this.age = age;
   }
   public String toString() {
      return "Name: "+this.name+" "+"Age: "+this.age;
   }
}
public class Example {
   public static void main(String args[]) {
      Student std1 = new Student("Krishna", 20);
      Student std2 = new Student("Radha", 25);
      Student std3 = new Student("Trupthi", 30);
      Student std4 = new Student("David", 35);
      Student std5 = new Student("Moksha", 40);
      Student students[] = {std1, std2, std3, std4, std5};
      System.out.println(Arrays.asList(students));
   }
}

আউটপুট

[Name: Krishna Age: 20, Name: Radha Age: 25, Name: Trupthi Age: 30, Name: David Age: 35, Name: Moksha Age: 40]

অ্যারেলিস্ট ক্লাস ব্যবহার করা

এটি একটু ভিন্ন কিন্তু সমাধান -

  • ArrayList ক্লাস প্রসারিত একটি ক্লাস তৈরি করুন।

  • এই ক্লাসে অবজেক্ট যোগ করুন।

  • toString() ব্যবহার করুন বিষয়বস্তু প্রিন্ট করার জন্য ArrayList ক্লাসের পদ্ধতি।

উদাহরণ

import java.util.ArrayList;
import java.util.Arrays;
class Student {
   String name = "Krishna";
   int age = 20;
   Student(String name, int age) {
      this.name = name;
      this.age = age;
   }
   public String toString() {
      return "Name: "+this.name+" "+"Age: "+this.age;
   }
}
public class Example extends ArrayList<Object> {
   public static void main(String args[]) {
      Example obj = new Example();
      obj.add(new Student("Krishna", 20));
      obj.add(new Student("Radha", 25));
      obj.add(new Student("Trupthi", 30));
      obj.add(new Student("David", 35));
      obj.add(new Student("Moksha", 40));
      System.out.println(obj.toString());
   }
}

আউটপুট

[Name: Krishna Age: 20, Name: Radha Age: 25, Name: Trupthi Age: 30, Name: David Age: 35, Name: Moksha Age: 40]

  1. কিভাবে জাভাতে printf() পদ্ধতি ব্যবহার করে একটি ফরম্যাট করা পাঠ্য মুদ্রণ করবেন?

  2. কিভাবে জাভা ব্যবহার করে একটি JSON অ্যারে লিখবেন/তৈরি করবেন?

  3. কিভাবে জাভা ব্যবহার করে JSON অ্যারে পড়তে/পার্স করবেন?

  4. জাভাতে toString() পদ্ধতি ওভাররাইড করার উদ্দেশ্য