Java Tuples একাধিক ভিন্ন ডেটা টাইপের মান একত্রে সংরক্ষণ করতে ব্যবহৃত হয়। Tuples থেকে উপাদান (elements) অ্যাক্সেস করার বিভিন্ন কৌশল রয়েছে। এখানে বিভিন্ন লাইব্রেরি ব্যবহার করে এবং কাস্টম Tuples থেকে উপাদান অ্যাক্সেস করার পদ্ধতি নিয়ে আলোচনা করা হলো।
১. Javatuples লাইব্রেরি ব্যবহার করে Elements Access
Javatuples লাইব্রেরি থেকে Tuples থেকে উপাদান অ্যাক্সেস করার জন্য বিভিন্ন পদ্ধতি সরবরাহ করে, যেমন getValue(index) এবং নির্দিষ্ট ভ্যালু অ্যাক্সেস করার জন্য getValueX()।
Quartet থেকে উপাদান অ্যাক্সেস
import org.javatuples.Quartet;
public class AccessTupleElements {
public static void main(String[] args) {
// Quartet তৈরি
Quartet<String, Integer, Double, Boolean> data =
new Quartet<>("Alice", 25, 3.75, true);
// উপাদান অ্যাক্সেস করার বিভিন্ন পদ্ধতি
String name = data.getValue0(); // প্রথম উপাদান
int age = data.getValue1(); // দ্বিতীয় উপাদান
double gpa = data.getValue2(); // তৃতীয় উপাদান
boolean graduated = data.getValue3(); // চতুর্থ উপাদান
// আউটপুট
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("GPA: " + gpa);
System.out.println("Graduated: " + graduated);
}
}
আউটপুট:
Name: Alice
Age: 25
GPA: 3.75
Graduated: true
Generic পদ্ধতি: getValue(index) ব্যবহার করে অ্যাক্সেস
getValue(index) একটি জেনেরিক পদ্ধতি যা টাপল থেকে যে কোনো উপাদান অ্যাক্সেস করতে পারে।
কোড উদাহরণ:
import org.javatuples.Triplet;
public class GenericAccessExample {
public static void main(String[] args) {
// Triplet তৈরি
Triplet<String, Integer, String> data =
new Triplet<>("John", 30, "Engineer");
// Generic Access
System.out.println("First Element: " + data.getValue(0)); // John
System.out.println("Second Element: " + data.getValue(1)); // 30
System.out.println("Third Element: " + data.getValue(2)); // Engineer
}
}
আউটপুট:
First Element: John
Second Element: 30
Third Element: Engineer
২. Vavr লাইব্রেরি ব্যবহার করে Elements Access
Vavr লাইব্রেরি টাপল থেকে উপাদান অ্যাক্সেস করার জন্য _1, _2, _3 ইত্যাদি ব্যবহার করে। এটি Tuples এর 8 পর্যন্ত মান সমর্থন করে।
কোড উদাহরণ:
import io.vavr.Tuple;
import io.vavr.Tuple3;
public class VavrTupleExample {
public static void main(String[] args) {
// Tuple তৈরি
Tuple3<String, Integer, String> data = Tuple.of("Alice", 28, "Doctor");
// উপাদান অ্যাক্সেস
String name = data._1; // প্রথম উপাদান
int age = data._2; // দ্বিতীয় উপাদান
String profession = data._3; // তৃতীয় উপাদান
// আউটপুট
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("Profession: " + profession);
}
}
আউটপুট:
Name: Alice
Age: 28
Profession: Doctor
৩. কাস্টম Tuples থেকে Elements Access
কাস্টম Tuples তৈরি করে সরাসরি গেটার মেথড দিয়ে উপাদান অ্যাক্সেস করা যায়।
কোড উদাহরণ:
public class CustomTuple<A, B, C> {
private final A first;
private final B second;
private final C third;
public CustomTuple(A first, B second, C third) {
this.first = first;
this.second = second;
this.third = third;
}
public A getFirst() {
return first;
}
public B getSecond() {
return second;
}
public C getThird() {
return third;
}
}
public class CustomTupleExample {
public static void main(String[] args) {
// Custom Tuple তৈরি
CustomTuple<String, Integer, Boolean> data =
new CustomTuple<>("Bob", 35, true);
// উপাদান অ্যাক্সেস
System.out.println("Name: " + data.getFirst());
System.out.println("Age: " + data.getSecond());
System.out.println("Active: " + data.getThird());
}
}
আউটপুট:
Name: Bob
Age: 35
Active: true
৪. Tuples থেকে উপাদান লুপের মাধ্যমে অ্যাক্সেস (Javatuples)
কোড উদাহরণ:
import org.javatuples.Quintet;
public class TupleIteration {
public static void main(String[] args) {
// Quintet তৈরি
Quintet<String, Integer, String, Double, Boolean> data =
new Quintet<>("John", 40, "Manager", 75000.5, true);
// লুপের মাধ্যমে অ্যাক্সেস
for (Object value : data) {
System.out.println(value);
}
}
}
আউটপুট:
John
40
Manager
75000.5
true
৫. Tuple থেকে List এ রূপান্তর এবং অ্যাক্সেস
কোড উদাহরণ:
import org.javatuples.Quartet;
import java.util.List;
public class TupleToListAccess {
public static void main(String[] args) {
// Quartet তৈরি
Quartet<String, Integer, Double, Boolean> data =
new Quartet<>("Alice", 22, 3.75, true);
// Tuple থেকে List
List<Object> dataList = data.toList();
// List থেকে উপাদান অ্যাক্সেস
System.out.println("Name: " + dataList.get(0));
System.out.println("Age: " + dataList.get(1));
System.out.println("GPA: " + dataList.get(2));
System.out.println("Graduated: " + dataList.get(3));
}
}
আউটপুট:
Name: Alice
Age: 22
GPA: 3.75
Graduated: true
- Javatuples লাইব্রেরি:
getValue(index)এবং নির্দিষ্ট মেথড (যেমনgetValue0,getValue1) ব্যবহার করে উপাদান অ্যাক্সেস করতে। - Vavr লাইব্রেরি:
_1,_2,_3ব্যবহার করে সহজে ডেটা পড়া। - Custom Tuples: কাস্টম ক্লাস তৈরি করে সহজে ডেটা ম্যানেজ করা যায়।
- List Conversion: Tuple থেকে List এ রূপান্তর করে উপাদান অ্যাক্সেস করা যায়।
এই কৌশলগুলো ব্যবহার করে Tuples থেকে ডেটা অ্যাক্সেস দ্রুত এবং কার্যকরভাবে করা সম্ভব।
Read more