জাভায় Generics ব্যবহার করে Type-Safe Tuples তৈরি করা সম্ভব। Generics-এর মাধ্যমে Tuples ব্যবহার করলে আপনি যেকোনো ডেটা টাইপ সংরক্ষণ করতে পারবেন এবং তা কম্পাইল টাইমে যাচাই করা হবে। এটি কোডের নিরাপত্তা এবং স্থিতিশীলতা নিশ্চিত করে।
Type-Safe Tuple এর সুবিধা
- Type Safety: কম্পাইল টাইমে ডেটা টাইপ যাচাই করে।
- Code Reusability: Generics ব্যবহার করে বিভিন্ন ডেটা টাইপের জন্য একই কোড ব্যবহার করা যায়।
- Flexibility: একই স্ট্রাকচারে বিভিন্ন টাইপ সংরক্ষণ করা সম্ভব।
- Improved Readability: Generics ব্যবহার করলে Tuple এর কনটেন্ট বুঝতে সুবিধা হয়।
Generics ব্যবহার করে Custom Type-Safe Tuple তৈরি
১. Tuple Class তৈরি
class Tuple<T1, T2> {
private final T1 first;
private final T2 second;
public Tuple(T1 first, T2 second) {
this.first = first;
this.second = second;
}
public T1 getFirst() {
return first;
}
public T2 getSecond() {
return second;
}
@Override
public String toString() {
return "(" + first + ", " + second + ")";
}
}
২. Tuple ব্যবহার করার উদাহরণ
public class TypeSafeTupleExample {
public static void main(String[] args) {
// String এবং Integer সংরক্ষণ
Tuple<String, Integer> person = new Tuple<>("Alice", 25);
System.out.println("Name: " + person.getFirst());
System.out.println("Age: " + person.getSecond());
// Double এবং Boolean সংরক্ষণ
Tuple<Double, Boolean> product = new Tuple<>(99.99, true);
System.out.println("Price: $" + product.getFirst());
System.out.println("In Stock: " + product.getSecond());
}
}
আউটপুট:
Name: Alice
Age: 25
Price: $99.99
In Stock: true
৩. Nested Tuples ব্যবহার করে জটিল ডেটা স্ট্রাকচার তৈরি
কোড উদাহরণ:
class Tuple3<T1, T2, T3> {
private final T1 first;
private final T2 second;
private final T3 third;
public Tuple3(T1 first, T2 second, T3 third) {
this.first = first;
this.second = second;
this.third = third;
}
public T1 getFirst() {
return first;
}
public T2 getSecond() {
return second;
}
public T3 getThird() {
return third;
}
@Override
public String toString() {
return "(" + first + ", " + second + ", " + third + ")";
}
}
public class NestedTupleExample {
public static void main(String[] args) {
// Nested Tuple তৈরি
Tuple3<String, Integer, Tuple<String, Double>> employee =
Content added By
Read more