A Java tömb egy olyan adatstruktúra, ahol azonos adattípusú elemeket tárolhatunk. Egy tömb elemei egy összefüggő memóriahelyen vannak tárolva. Tehát egy tömbben tárolhatunk egy rögzített elemkészletet.
A következő módokon nyomtathat ki egy tömböt Java nyelven:
- Jáva számára hurok
- Jáva az egyes hurok
- Jáva Arrays.toString() módszer
- Jáva Arrays.deepToString() módszer
- Jáva Arrays.asList() módszer
- Jáva Iterátor Felület
- Jáva Folyam API
Java for ciklus
Jáva számára A ciklus utasításkészletek ismételt végrehajtására szolgál, amíg egy adott feltétel teljesül.
latex szövegméret
Szintaxis:
for(initialization; condition; increment/ decrement) { //statements }
Példa a for ciklusra
A következő példában létrehoztunk egy négy hosszúságú tömböt, amelybe inicializáltuk az elemeket. A ciklust használtuk az értékek lekérésére a tömbből. Ez a legnépszerűbb módja a tömbnyomtatásnak Java nyelven.
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 for-each ciklus
Jáva az egyes A ciklus egy tömb vagy gyűjtemény áthaladására is használható. Elemek alapján működik. Egyenként adja vissza az elemeket a definiált változóban.
Szintaxis:
for(Type var:array)
Példa a for-each ciklusra
A következő példában létrehoztunk egy négyes hosszúságú String típusú tömböt, és ebbe inicializáltuk az elemeket. A for-each ciklust használtuk a tömb áthaladásához.
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); } } }
Kimenet:
Delhi Jaipur Gujarat Mumbai
Java Arrays.toString() metódus
Jáva Arrays.toString() egy statikus módszer Tömbök osztályba tartozik java.util csomag Különféle módszereket tartalmaz a tömb manipulálására.
Szintaxis:
public static String toString(int[] a)
Bármilyen primitív típusú tömböt elfogad argumentumként. Visszaadja a húr egy tömb ábrázolása, amely a tömb elemeinek listáját tartalmazza. Egy tömb elemeit Stringgé konvertálja a String.valueOf(int) .
Példa a toString() metódusra
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)); } }
Kimenet:
[34, -10, 56, -9, -33]
Java Arrays.deepToString() metódus
A deepToString() A Java Arrays osztály metódusa többdimenziós tömbök karakterláncokká konvertálására szolgál.
Szintaxis:
public static String deepToString(Object[] a)
Paraméterként tömböt fogad el. Egy tömb String reprezentációját adja vissza.
Példa a deepToString() metódusra
A következő példában létrehoztunk egy kétdimenziós float típusú tömböt.
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)); } }
Kimenet:
[[1.2, 2.5], [3.9, 4.0], [5.3, 6.2]]
Java Arrays.asList() metódus
Jáva Arrays.asList() a Java statikus módszere Tömbök osztályba tartozik java.util csomag. Hídként működik a tömbalapú és a gyűjtemény alapú API között.
Szintaxis:
public static ListasList(T...a)
A módszer egy egyszerű módot biztosít egy rögzített méretű lista inicializálására is, amely sok elemet tartalmaz.
List obj=Arrays.toString(array[] a
Egy tömböt fogad el argumentumként. Egy tömb listanézetét adja vissza.
Példa az asList() metódusra
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)); }
Kimenet:
[Hello, Java, Programmers]
Java Iterator felület
Jáva Iterátor egy interfész, amelyhez tartozik java.util csomag. Az Iterator objektum az iterator() metódus meghívásával hozható létre. A Gyűjtemény felületén található. Egy iterátort ad vissza.
Példa az Iterator felületre
A következő példában deklarálunk egy tömböt, és inicializálunk benne elemeket. Először a megadott tömböt listává alakítjuk az Arrays.asList() metódussal, mert az iterátor lehetővé teszi, hogy áthaladjunk a gyűjteményen, majd meghívjuk a gyűjteményosztály iterator() metódusát.
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()); } } }
Kimenet:
1.5 2.6 3.7 4.8 5.9
Java Stream API
A Java Stream egy adatstruktúra, amelyet igény szerint számítanak ki. Nem tárol adatokat. A forrásadat-struktúrán, például a gyűjteményen és a tömbön működik. A Java stream API a belső iteráció megvalósítására szolgál. Számos funkciót biztosít, például szekvenciális és párhuzamos végrehajtást.
Java stream() metódus
Jáva folyam() a Java statikus módszere Tömbök osztály, amely a java.util csomaghoz tartozik. Egy tömb szekvenciális adatfolyamának lekérésére szolgál.
Szintaxis:
public static Stream stream(T[] array)
Ahol T a tömb típusa. A módszer elfogad egy sor amelynek elemeit szekvenciális folyammá kell átalakítani. Egy szekvenciát ad vissza IntStream a megadott tömb forrásaként.
Java forEach() metódus
Ez egy terminálművelet. Ez nem garantálja a stream találkozási sorrendjének tiszteletben tartását.
Szintaxis:
void forEach(Consumer action)
A módszer elfogad egy akció paraméterként. Ez egy nem zavaró művelet, amelyet minden elemen végrehajtanak. Nem ad vissza semmit.
Két terminálműveletet alkalmazhatunk egy adatfolyamra egy tömb nyomtatásához.
Szerezz be iterátort a streamhez
Iterator it=Arrays.stream(arr).iterator();
A stream().forEach() használata
Arrays.stream(arr).forEach(System.out::println);
Példa a stream.forEach() metódusra
A következő példában egy másik módszert alkalmaztunk egy tömb nyomtatására. A forEach() metódus az adatfolyam minden elemén való iterációra szolgál. Az Iterable és Stream felületen van meghatározva.
A forEach() metóduson belül System.out-ot használtunk, amely egy objektumra való hivatkozás. Szabványos kimeneti adatfolyamot képvisel. Van egy println() nevű metódusa. Ez egy túlterhelt módszer, amely bármit elfogad érvként. Ha a println() metódust a tag hozzáférési operátor (::) mögé tesszük, akkor az egy kifejezés lesz.
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); } }
Kimenet:
Java C C++ Python Perl