Java-array är en datastruktur där vi kan lagra elementen av samma datatyp. Elementen i en array lagras i en sammanhängande minnesplats. Så vi kan lagra en fast uppsättning element i en array.
Det finns följande sätt att skriva ut en array i Java:
- Java för slinga
- Java för varje slinga
- Java Arrays.toString() metod
- Java Arrays.deepToString() metod
- Java Arrays.asList() metod
- Java Iterator Gränssnitt
- Java Ström API
Java för loop
Java för loop används för att exekvera en uppsättning satser upprepade gånger tills ett visst villkor är uppfyllt.
byta java
Syntax:
for(initialization; condition; increment/ decrement) { //statements }
Exempel på för loop
I följande exempel har vi skapat en array med längd fyra och initierat element i den. Vi har använt for loop för att hämta värdena från arrayen. Det är det mest populära sättet att skriva ut array i Java.
public class PrintArrayExample1 { public static void main(String args[]) { //declaration and instantiation of an array int arr[]=new int[4]; //initializing elements arr[0]=10; arr[1]=20; arr[2]=70; arr[3]=40; //traversing over array using for loop for(int i=0;i <arr.length;i++) length is the property of array system.out.println(arr[i]); } < pre> <p> <strong>Output:</strong> </p> <pre> 10 20 70 40 </pre> <h2>Java for-each loop</h2> <p>Java <strong>for-each</strong> loop is also used to traverse over an array or collection. It works on the basis of elements. It returns elements one by one in the defined variable. </p> <p> <strong>Syntax:</strong> </p> <pre> for(Type var:array) </pre> <p> <strong>Example of for-each loop</strong> </p> <p>In the following example, we have created an array of String type of length four and initialized elements into it. We have used for-each loop to traverse over the array.</p> <pre> public class PrintArrayExample2 { public static void main(String args[]) { // declaration and instantiation of an array String[] city = new String[4]; //initializing elements city[0] = 'Delhi'; city[1] = 'Jaipur'; city[2] = 'Gujarat'; city[3] = 'Mumbai'; //traversing over array using for-each loop for (String str : city) { System.out.println(str); } } } </pre> <p> <strong>Output:</strong> </p> <pre> Delhi Jaipur Gujarat Mumbai </pre> <h2>Java Arrays.toString() method</h2> <p>Java <strong>Arrays.toString()</strong> is a static method of <strong>Arrays </strong> class which belongs to <strong>java.util </strong> package It contains various methods for manipulating array. </p> <p> <strong>Syntax:</strong> </p> <pre> public static String toString(int[] a) </pre> <p>It accepts an array of any primitive type as an argument. It returns a <strong>string</strong> representation of an array that contains a list of array's elements. The elements of an array are converted to String by <strong>String.valueOf(int) </strong> .</p> <p> <strong>Example of toString() method</strong> </p> <pre> import java.util.Arrays; public class PrintArrayExample3 { public static void main(String[] args) { //declaring and initializing array int array[] = {34,-10, 56, -9, -33}; //returns string representation of the specified array System.out.println(Arrays.toString(array)); } } </pre> <p> <strong>Output:</strong> </p> <pre> [34, -10, 56, -9, -33] </pre> <h2>Java Arrays.deepToString() method</h2> <p>The <strong>deepToString()</strong> method of Java Arrays class is designed for converting multidimensional arrays to strings.</p> <p> <strong>Syntax:</strong> </p> <pre> public static String deepToString(Object[] a) </pre> <p>It accepts an array as a parameter. It returns the String representation of an array.</p> <p> <strong>Example of deepToString() method</strong> </p> <p>In the following example, we have created a two dimensional array of float type. </p> <pre> import java.util.Arrays; public class PrintArrayExample4 { public static void main(String[] args) { //declaration and initialization of two dimensional array of float type float[][] array = {{1.2f, 2.5f}, {3.9f, 4.0f}, {5.3f, 6.2f}}; System.out.println(Arrays.deepToString(array)); } } </pre> <p> <strong>Output:</strong> </p> <pre> [[1.2, 2.5], [3.9, 4.0], [5.3, 6.2]] </pre> <h2>Java Arrays.asList() method</h2> <p>Java <strong>Arrays.asList()</strong> is a static method of Java <strong>Arrays</strong> class which belongs to <strong>java.util</strong> package. It act as a bridge between array based and collection based API. </p> <p> <strong>Syntax:</strong> </p> <pre> public static ListasList(T...a) </pre> <p>The method also provides an easy way to create a fixed-size list initialize to contain many elements.</p> <pre> List obj=Arrays.toString(array[] a </pre> <p>It accepts an array as an argument. It returns the list view of an array.</p> <p> <strong>Example of asList() method</strong> </p> <pre> import java.util.Arrays; public class PrintArrayExample5 { public static void main(String [] args) { //declaration and initialization of two dimensional array String[] stringArray={'Hello','Java','Programmers'}; System.out.println(Arrays.asList(stringArray)); } </pre> <p> <strong>Output:</strong> </p> <pre> [Hello, Java, Programmers] </pre> <h2>Java Iterator interface</h2> <p>Java <strong>Iterator</strong> is an interface which belongs to <strong>java.util</strong> package. The Iterator object can be created by calling iterator() method. It is present in Collection interface. It returns an iterator.</p> <p> <strong>Example of Iterator interface</strong> </p> <p>In the following, example, we have declare an array and initialize elements into it. We first convert the specified array into list by using Arrays.asList() method because iterator allows us to traverse over the collection and then invoke iterator() method of collection class.</p> <pre> import java.util.Arrays; import java.util.Iterator; public class PrintArrayExample6 { public static void main(String[] args) { //declaration and initialization of an array of Double type Double[] array = { 1.5, 2.6, 3.7, 4.8, 5.9}; //returns an iterator Iterator it = Arrays.asList(array).iterator(); while(itr.hasNext()) //returns a boolean value { System.out.println(itr.next()); } } } </pre> <p> <strong>Output:</strong> </p> <pre> 1.5 2.6 3.7 4.8 5.9 </pre> <h2>Java Stream API</h2> <p>A Java Stream is a data structure which is computed on-demand. It doesn't store data. It operates on the source data structure such as collection and array. Java stream API is used to implement internal iteration. It provides several features such as sequential and parallel execution. </p> <h3>Java stream() method</h3> <p>Java <strong>stream()</strong> is a static method of Java <strong>Arrays</strong> class which belongs to java.util package. It is used to get a sequential stream of an array.</p> <p> <strong>Syntax:</strong> </p> <pre> public static Stream stream(T[] array) </pre> <p>Where <strong>T</strong> is the type of array. The method accepts an <strong>array</strong> whose elements are to be converted into a sequential stream. It returns a sequential <strong>IntStream</strong> with the specified array as its source.</p> <h3>Java forEach() method</h3> <p>It is a terminal operation. It does not guarantee to respect the encounter order of the stream.</p> <p> <strong>Syntax:</strong> </p> <pre> void forEach(Consumer action) </pre> <p>The method accepts an <strong>action</strong> as a parameter. It is non-interfering action perform on each element. It does not return anything.</p> <p>There are two terminal operations which we can apply to a stream to print an array.</p> <p> <strong>Get an iterator to the stream</strong> </p> <pre> Iterator it=Arrays.stream(arr).iterator(); </pre> <p> <strong>Using stream().forEach()</strong> </p> <pre> Arrays.stream(arr).forEach(System.out::println); </pre> <p> <strong>Example of stream.forEach() method</strong> </p> <p>In the following example, we have used a different way to print an array. The forEach() method is used to iterate over every element of the stream. It is defined in the Iterable and Stream interface.</p> <p>Inside the forEach() method we have used System.out which is a reference to an object. It represent standard output stream. It has a method called println(). It is an overloaded method which can accept anything as an argument. When we put println() method after member access operator (::), it becomes an expression.</p> <pre> import java.util.Arrays; public class PrintArrayExample7 { public static void main(String[] args) { //declaration and initialization of an array of String type String[] arr = {'Java', 'C', 'C++', 'Python', 'Perl'}; //iterating by passing the method reference Arrays.stream(arr).forEach(System.out::println); } } </pre> <p> <strong>Output:</strong> </p> <pre> Java C C++ Python Perl </pre> <hr></arr.length;i++)>
Java för varje slinga
Java för varje loop används också för att gå över en array eller samling. Det fungerar utifrån element. Den returnerar element ett efter ett i den definierade variabeln.
Syntax:
for(Type var:array)
Exempel på för varje slinga
I följande exempel har vi skapat en array av String-typ med längd fyra och initierat element i den. Vi har använt för varje slinga för att gå över arrayen.
public class PrintArrayExample2 { public static void main(String args[]) { // declaration and instantiation of an array String[] city = new String[4]; //initializing elements city[0] = 'Delhi'; city[1] = 'Jaipur'; city[2] = 'Gujarat'; city[3] = 'Mumbai'; //traversing over array using for-each loop for (String str : city) { System.out.println(str); } } }
Produktion:
Delhi Jaipur Gujarat Mumbai
Java Arrays.toString()-metoden
Java Arrays.toString() är en statisk metod för Matriser klass som tillhör java.util paket Den innehåller olika metoder för att manipulera array.
Syntax:
public static String toString(int[] a)
Den accepterar en array av vilken primitiv typ som helst som ett argument. Den returnerar en sträng representation av en array som innehåller en lista med arrays element. Elementen i en array konverteras till String by String.valueOf(int) .
Exempel på metoden toString().
import java.util.Arrays; public class PrintArrayExample3 { public static void main(String[] args) { //declaring and initializing array int array[] = {34,-10, 56, -9, -33}; //returns string representation of the specified array System.out.println(Arrays.toString(array)); } }
Produktion:
[34, -10, 56, -9, -33]
Java Arrays.deepToString()-metoden
De deepToString() metoden för Java Arrays-klassen är designad för att konvertera flerdimensionella arrayer till strängar.
Syntax:
public static String deepToString(Object[] a)
Den accepterar en array som en parameter. Den returnerar strängrepresentationen för en array.
Exempel på metod deepToString().
I följande exempel har vi skapat en tvådimensionell array av flyttyp.
import java.util.Arrays; public class PrintArrayExample4 { public static void main(String[] args) { //declaration and initialization of two dimensional array of float type float[][] array = {{1.2f, 2.5f}, {3.9f, 4.0f}, {5.3f, 6.2f}}; System.out.println(Arrays.deepToString(array)); } }
Produktion:
[[1.2, 2.5], [3.9, 4.0], [5.3, 6.2]]
Java Arrays.asList()-metoden
Java Arrays.asList() är en statisk metod för Java Matriser klass som tillhör java.util paket. Det fungerar som en brygga mellan arraybaserad och samlingsbaserad API.
Syntax:
public static ListasList(T...a)
Metoden ger också ett enkelt sätt att skapa en lista med fast storlek som initieras för att innehålla många element.
List obj=Arrays.toString(array[] a
Den accepterar en array som ett argument. Den returnerar listvyn för en array.
Exempel på metod asList().
import java.util.Arrays; public class PrintArrayExample5 { public static void main(String [] args) { //declaration and initialization of two dimensional array String[] stringArray={'Hello','Java','Programmers'}; System.out.println(Arrays.asList(stringArray)); }
Produktion:
[Hello, Java, Programmers]
Java Iterator-gränssnitt
Java Iterator är ett gränssnitt som hör till java.util paket. Iterator-objektet kan skapas genom att anropa iterator()-metoden. Det finns i samlingsgränssnittet. Den returnerar en iterator.
Exempel på Iterator-gränssnitt
I följande exempel har vi deklarerat en array och initierat element i den. Vi konverterar först den angivna arrayen till en lista genom att använda metoden Arrays.asList() eftersom iterator tillåter oss att gå över samlingen och sedan anropa iterator()-metoden för samlingsklassen.
import java.util.Arrays; import java.util.Iterator; public class PrintArrayExample6 { public static void main(String[] args) { //declaration and initialization of an array of Double type Double[] array = { 1.5, 2.6, 3.7, 4.8, 5.9}; //returns an iterator Iterator it = Arrays.asList(array).iterator(); while(itr.hasNext()) //returns a boolean value { System.out.println(itr.next()); } } }
Produktion:
1.5 2.6 3.7 4.8 5.9
Java Stream API
En Java Stream är en datastruktur som beräknas på begäran. Den lagrar inte data. Det fungerar på källdatastrukturen såsom insamling och array. Java stream API används för att implementera intern iteration. Det ger flera funktioner som sekventiell och parallell exekvering.
Java stream() metod
Java ström() är en statisk metod för Java Matriser klass som tillhör java.util-paketet. Den används för att få en sekventiell ström av en array.
Syntax:
public static Stream stream(T[] array)
Var T är typen av array. Metoden accepterar en array vars element ska omvandlas till en sekventiell ström. Den returnerar en sekventiell IntStream med den angivna arrayen som källa.
Java forEach()-metoden
Det är en terminaloperation. Det garanterar inte att strömmens mötesordning respekteras.
Syntax:
void forEach(Consumer action)
Metoden accepterar en handling som en parameter. Det är icke-störande åtgärd utföra på varje element. Det ger inget tillbaka.
Det finns två terminaloperationer som vi kan tillämpa på en ström för att skriva ut en array.
Skaffa en iterator till strömmen
Iterator it=Arrays.stream(arr).iterator();
Använda stream().forEach()
Arrays.stream(arr).forEach(System.out::println);
Exempel på metoden stream.forEach().
I följande exempel har vi använt ett annat sätt att skriva ut en array. Metoden forEach() används för att iterera över varje element i strömmen. Det definieras i Iterable och Stream-gränssnittet.
Inuti metoden forEach() har vi använt System.out som är en referens till ett objekt. Det representerar standardutgångsström. Den har en metod som heter println(). Det är en överbelastad metod som kan acceptera vad som helst som ett argument. När vi sätter metoden println() efter medlemsåtkomstoperatorn (::), blir det ett uttryck.
import java.util.Arrays; public class PrintArrayExample7 { public static void main(String[] args) { //declaration and initialization of an array of String type String[] arr = {'Java', 'C', 'C++', 'Python', 'Perl'}; //iterating by passing the method reference Arrays.stream(arr).forEach(System.out::println); } }
Produktion:
Java C C++ Python Perl