Pole v Javě se liší v implementaci a použití ve srovnání s C/C++, i když mají také mnoho podobností. Zde budeme diskutovat o tom, jak vrátit pole v jazyce Java.
Abychom vrátili pole v Javě, musíme se postarat o následující body:
Klíčový bod 1: Metoda vracející pole musí mít návratový typ jako pole stejného datového typu, jako má vracené pole. Návratovým typem mohou být obvyklé objekty třídy Integer, Double, Character, String nebo uživatelem definované třídy.
// Method returning an integer array. int[] methodName() {...}> // Method returning a String array. String[] methodName() {...}> // Method returning an array of objects of class named Students. Students[] methodName() {...}> Klíčový bod 2: Modifikátory přístupu musí být použity přesně s ohledem na použití metody a vracejícího se pole. Rovněž je třeba vzít v úvahu statické a nestatické deklarace.
// Using public access modifier and static to call the method from a static class, method or block. public static char[] methodName() {...}> Klíčový bod 3: Ve volání metody musí být libovolné pole proměnné stejného datového typu nebo něčeho podobného, aby bylo možné zpracovat vracené pole. Například celočíselné pole vrácené z libovolné metody lze uložit následovně.
int[] storage = methodReturningArray();>
Implementace:
Abychom tomu lépe porozuměli, můžeme se podívat na několik různých druhů scénářů, kde můžeme vracet pole. Zde budeme zvažovat tři příklady scénářů.
- Případ 1: Jednoduchá vestavěná pole
- Případ 2: Pole objektů
- Případ 3: Vrácení vícerozměrných polí
Případ 1: Vrací pole integer (vestavěný datový typ) v jazyce Java
Jakékoli pole vestavěného datového typu může být celé číslo, znak, float, double all může být vráceno jednoduše pomocí příkazů return s ohledem na výše uvedené body.
binární strom vs binární vyhledávací strom
Příklad
Jáva
// Java Program to Illustrate Returning> // simple built-in arrays> // Importing input output classes> import> java.io.*;> // Main class> class> GFG {> >// Method 1> >// Main driver method> >public> static> void> main(String[] args)> >{> >// An integer array storing the returned array> >// from the method> >int>[] storage = methodReturningArray();> >// Printing the elements of the array> >for> (>int> i =>0>; i System.out.print(storage[i] + ' '); } // Method 2 // Returning an integer array public static int[] methodReturningArray() { int[] sample = { 1, 2, 3, 4 }; // Return statement of the method. return sample; } }> |
>
Madhubala
>Výstup
1 2 3 4>
Případ 2: Vrácení pole objektů v jazyce Java
To se provádí přesně podobným způsobem v případě vracení polí vestavěných datových typů.
Příklad
Jáva
// Java Program to Illustrate Returning> // an array of objects in java> // Importing all input output classes> import> java.io.*;> // Class 1> // Helper class> // Courses whose objects are returned as an array> class> Courses {> >String name;> >int> modules;> >// Constructor to instantiate class objects.> >public> Courses(String n,>int> m)> >{> >// This keyword refers to current instance itself> >this>.name = n;> >this>.modules = m;> >}> }> // Class 2> // Main class> class> GFG {> >// Method 1> >// Main driver method> >public> static> void> main(String[] args)> >{> >// Calling the method for returning an array of> >// objects of the Courses class.> >Courses[] sample = methodReturningArray();> >// Printing the returned array elements.> >for> (>int> i =>0>; i System.out.print(sample[i].name + ' - ' + sample[i].modules + ' modules
'); } // Method 2 // Note that return type is an array public static Courses[] methodReturningArray() { // Declaring Array of objects of the Courses class Courses[] arr = new Courses[4]; // Custom array of objects arr[0] = new Courses('Java', 31); arr[1] = new Courses('C++', 26); arr[2] = new Courses('DSA', 24); arr[3] = new Courses('DBMS', 12); // Statement to return an array of objects return arr; } }> |
>
>Výstup
Java - 31 modules C++ - 26 modules DSA - 24 modules DBMS - 12 modules>
Případ 3: Vrácení vícerozměrných polí
Vícerozměrná pole v jazyce Java lze říci, že jde o pole polí uvnitř polí. Nejjednodušší formou může být dvourozměrné pole. Mají své velikosti a deklaraci podle svých velikostí. Zde je níže demonstrováno navracení dvourozměrného pole, které má velmi podobný přístup jako jednorozměrná pole.
Příklad
Jáva
nbsp
// Java Program to Illustrate Returning> // Multi-dimensional Arrays> // Importing input output classes> import> java.io.*;> // Main class> class> GFG {> >// Method 1> >// Main driver method> >public> static> void> main(String[] args)> >{> >// An integer 2D array storing the> >// returned array from the method> >int>[][] storage = methodReturningArray();> >// Printing the elements of the array> >// using nested for loops> >for> (>int> i =>0>; i for (int j = 0; j 0].length; j++) System.out.print(storage[i][j] + ' '); System.out.println(); } } // Method 2 // Returning an integer array public static int[][] methodReturningArray() { // Custom 2D integer array int[][] sample = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; // Return statement of the method return sample; } }> |
>
>Výstup
1 2 3 4 5 6 7 8 9>