JavaTuples - Chuyển đổi

Tuple đến danh sách / mảng

Một tuple có thể được chuyển đổi thành Danh sách / Mảng nhưng với chi phí là an toàn kiểu và danh sách được chuyển đổi thuộc kiểu Danh sách <Đối tượng> / Đối tượng [].

List<Object> list = triplet.toList();
Object[] array = triplet.toArray();

Bộ sưu tập / Mảng sang Tuple

Một tập hợp có thể được chuyển đổi thành tuple bằng phương thức fromCollection () và mảng có thể được chuyển đổi thành tuple bằng phương thức fromArray ().

Pair<String, Integer> pair = Pair.fromCollection(list);
Quartet<String,String,String,String> quartet = Quartet.fromArray(array);

Nếu kích thước của mảng / bộ sưu tập khác với kích thước của tuple, thì IllegalArgumentException sẽ xảy ra.

Exception in thread "main" java.lang.IllegalArgumentException: 
Array must have exactly 4 elements in order to create a Quartet. Size is 5
   at ...

Thí dụ

Hãy xem JavaTuples hoạt động. Ở đây chúng ta sẽ xem cách chuyển đổi tuple thành list / array và ngược lại.

Tạo tệp lớp java có tên TupleTester trong C:\>JavaTuples.

Tệp: TupleTester.java

package com.tutorialspoint;
import java.util.List;
import org.javatuples.Quartet;
import org.javatuples.Triplet;
public class TupleTester {
   public static void main(String args[]){
      Triplet<String, Integer, String> triplet = Triplet.with(
         "Test1", Integer.valueOf(5), "Test2"
      );
      List<Object> list = triplet.toList();
      Object[] array = triplet.toArray();
      System.out.println("Triplet:" + triplet);
      System.out.println("List: " + list);  
      System.out.println();
      for(Object object: array) {
         System.out.print(object + " " );
      }
      System.out.println();
      String[] strArray = new String[] {"a", "b" , "c" , "d"};
      Quartet<String, String, String, String> quartet = Quartet.fromArray(strArray);
      System.out.println("Quartet:" + quartet);      
   }
}

Verify the result

Biên dịch các lớp bằng cách sử dụng javac trình biên dịch như sau -

C:\JavaTuples>javac -cp javatuples-1.2.jar ./com/tutorialspoint/TupleTester.java

Bây giờ hãy chạy TupleTester để xem kết quả -

C:\JavaTuples>java  -cp .;javatuples-1.2.jar com.tutorialspoint.TupleTester

Đầu ra

Xác minh đầu ra

Triplet:[Test1, 5, Test2]
List: [Test1, 5, Test2]

Test1 5 Test2 
Quartet:[a, b, c, d]