logo

Hvordan returnerer man et array i Java?

En Arrays i Java er forskellige i implementering og brug sammenlignet med den i C/C++, selvom de også har mange ligheder. Her vil vi diskutere, hvordan man returnerer et array i java.

For at returnere et array i java skal vi tage os af følgende punkter:



Nøglepunkt 1: Metode, der returnerer arrayet, skal have returtypen som et array af samme datatype som det array, der returneres. Returtypen kan også være de sædvanlige heltal-, dobbelt-, tegn-, streng- eller brugerdefinerede klasseobjekter.

// 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() {...}>

Nøglepunkt 2: Adgangsmodifikatorer skal bruges nøjagtigt i betragtning af brugen af ​​metoden og det returnerende array. Statiske og ikke-statiske erklæringer skal også tages i betragtning.

// Using public access modifier and static to call the method from a static class, method or block. public static char[] methodName() {...}>

Nøglepunkt 3: Der skal være et hvilket som helst variabelt array af samme datatype eller noget lignende ved metodekaldet for at håndtere arrayet, der returneres. For eksempel kan et heltalsarray, der returneres fra en hvilken som helst metode, lagres som følger.



int[] storage = methodReturningArray();>

Implementering:

For bedre at forstå dette kan vi undersøge nogle forskellige slags scenarier, hvor vi muligvis returnerer arrays. Her vil vi overveje tre eksempler på scenarier.

  • Case 1: Simple Indbyggede arrays
  • Case 2: Array af objekter
  • Case 3: Returnering af multidimensionelle arrays

Case 1: Returnerer et heltal (indbygget datatype) array i java



Enhver indbygget datatypes array være heltal, karakter, float, double alle kan returneres, bruger blot return-udsagn under hensyntagen til punkterne ovenfor.

Eksempel

Java




// 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; } }>

>

>

Produktion

1 2 3 4>

Tilfælde 2: Returnerer en række objekter i java

Dette gøres nøjagtigt på lignende måde i tilfælde af returnerende arrays af indbyggede datatyper.

Eksempel

Java




begrænsninger af e-bank
// 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; } }>

>

>

Produktion

Java - 31 modules C++ - 26 modules DSA - 24 modules DBMS - 12 modules>

Case 3: Returnerer multidimensionelle arrays

Multidimensionelle arrays i java kan siges at være et array af arrays inde i arrays. Den enkleste form kan være et todimensionelt array. De har deres størrelser og erklæring i henhold til deres størrelser. Her er returnering af et todimensionelt array demonstreret nedenfor, der har en meget lignende tilgang til de endimensionelle arrays.

Eksempel

Java




// 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; } }>

>

>

Produktion

1 2 3 4 5 6 7 8 9>