TreeSet toArray (T []) в Java с примером
Метод метода toArray (T []) класса TreeSet в Java используется для формирования массива тех же элементов, что и у TreeSet. Он возвращает массив, содержащий все элементы в этом TreeSet в правильном порядке; тип времени выполнения возвращаемого массива - это тип указанного массива. Если TreeSet помещается в указанный массив, он возвращается в нем. В противном случае выделяется новый массив с типом времени выполнения указанного массива и размером этого TreeSet.
Если TreeSet помещается в указанный массив с свободным пространством (т. Е. В массиве больше элементов, чем в TreeSet), элемент в массиве, следующий сразу за концом TreeSet, устанавливается в значение NULL. (Это полезно при определении длины TreeSet, только если вызывающий знает, что TreeSet не содержит никаких нулевых элементов.)
Синтаксис:
public <T> T [] toArray (T [] a)
Параметры: метод принимает один параметр arr [], который представляет собой массив, в котором должны храниться элементы TreeSet, если он достаточно большой; в противном случае для этой цели выделяется новый массив того же типа среды выполнения.
Возвращаемое значение: метод возвращает массив, содержащий элементы, аналогичные TreeSet.
Исключение: метод может вызывать исключения двух типов:
- ArrayStoreException : когда упомянутый массив имеет другой тип и не может сравниваться с элементами, упомянутыми в TreeSet.
- NullPointerException : если массив имеет значение Null, возникает это исключение.
Программа ниже иллюстрирует работу метода TreeSet.toArray (arr []).
Program 1: When array is of the size of TreeSet
// Java code to illustrate toArray(arr[]) import java.util.*; public class TreeSetDemo { public static void main(String args[]) { // Creating an empty TreeSet TreeSet<String> set = new TreeSet<String>(); // Use add() method to add // elements into the TreeSet set.add( "Welcome" ); set.add( "To" ); set.add( "Geeks" ); set.add( "For" ); set.add( "Geeks" ); // Displaying the TreeSet System.out.println( "The TreeSet: " + set); // Creating the array and using toArray() String[] arr = new String[ 5 ]; arr = set.toArray(arr); // Displaying arr System.out.println( "The arr[] is:" ); for ( int j = 0 ; j < arr.length; j++) System.out.println(arr[j]); } } |
The TreeSet: [For, Geeks, To, Welcome] The arr[] is: For Geeks To Welcome null
Program 2: When array is less than the size of TreeSet
// Java code to illustrate toArray(arr[]) import java.util.*; public class TreeSetDemo { public static void main(String args[]) { // Creating an empty TreeSet TreeSet<String> set = new TreeSet<String>(); // Use add() method to add // elements into the TreeSet set.add( "Welcome" ); set.add( "To" ); set.add( "Geeks" ); set.add( "For" ); set.add( "Geeks" ); // Displaying the TreeSet System.out.println( "The TreeSet: " + set); // Creating the array and using toArray() String[] arr = new String[ 1 ]; arr = set.toArray(arr); // Displaying arr System.out.println( "The arr[] is:" ); for ( int j = 0 ; j < arr.length; j++) System.out.println(arr[j]); } } |
The TreeSet: [For, Geeks, To, Welcome] The arr[] is: For Geeks To Welcome
Program 3: When array is more than the size of TreeSet
// Java code to illustrate toArray(arr[]) import java.util.*; public class TreeSetDemo { public static void main(String args[]) { // Creating an empty TreeSet TreeSet<String> set = new TreeSet<String>(); // Use add() method to add // elements into the TreeSet set.add( "Welcome" ); set.add( "To" ); set.add( "Geeks" ); set.add( "For" ); set.add( "Geeks" ); // Displaying the TreeSet System.out.println( "The TreeSet: " + set); // Creating the array and using toArray() String[] arr = new String[ 10 ]; arr = set.toArray(arr); // Displaying arr System.out.println( "The arr[] is:" ); for ( int j = 0 ; j < arr.length; j++) System.out.println(arr[j]); } } |
The TreeSet: [For, Geeks, To, Welcome] The arr[] is: For Geeks To Welcome null null null null null null
Program 4: To demonstrate NullPointerException
// Java code to illustrate toArray(arr[]) import java.util.*; public class TreeSetDemo { public static void main(String args[]) { // Creating an empty TreeSet TreeSet<String> set = new TreeSet<String>(); // Use add() method to add // elements into the TreeSet set.add( "Welcome" ); set.add( "To" ); set.add( "Geeks" ); set.add( "For" ); set.add( "Geeks" ); // Displaying the TreeSet System.out.println( "The TreeSet: " + set); try { // Creating the array String[] arr = null ; // using toArray() // Since arr is null // Hence exception will be thrown arr = set.toArray(arr); // Displaying arr System.out.println( "The arr[] is:" ); for ( int j = 0 ; j < arr.length; j++) System.out.println(arr[j]); } catch (Exception e) { System.out.println( "Exception: " + e); } } } |
The TreeSet: [For, Geeks, To, Welcome] Exception: java.lang.NullPointerException
Вниманию читателя! Не переставай учиться сейчас. Ознакомьтесь со всеми важными концепциями Java Foundation и коллекций с помощью курса "Основы Java и Java Collections" по доступной для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .