Mehrere Variablen in Java initialisieren
- Initialisieren mehrerer String-Variablen mit demselben Wert in Java
- Mehrere Objekte mit der gleichen Klasse in Java initialisieren
In diesem Artikel gehen wir die Schritte durch, die zu befolgen sind, wenn wir mehrere Variablen mit demselben Wert in Java initialisieren wollen. Wir werden besprechen, warum wir nicht alle Variablen bei der Deklaration mit demselben Wert initialisieren können.
Initialisieren mehrerer String-Variablen mit demselben Wert in Java
Im folgenden Beispiel 1 deklarieren wir die Variablen one
, two
und three
vom Typ String
und initialisieren dann alle drei Variablen mit demselben Wert. Wir tun dies durch verkettete Zuweisung. Das bedeutet, dass wir allen Variablen, die rechts vom Zuweisungsoperator stehen, den Wert der ganz linken Variable zuweisen.
- Beispiel 1:
package com.company;
public class Main {
public static void main(String[] args) {
String one, two, three;
one = two = three = "All three variables will be initialized with this string";
System.out.println(one);
System.out.println(two);
System.out.println(three);
}
}
Ausgabe:
All three variables will be initialized with this string
All three variables will be initialized with this string
All three variables will be initialized with this string
Wenn unsere Anforderung darin besteht, die Variablen während der Deklaration zu initialisieren, können wir die verkettete Zuweisung verwenden, wie wir es unten getan haben. Dies verringert jedoch die Lesbarkeit des Programms, da möglicherweise mehrere Entwickler an demselben Projekt arbeiten.
- Beispiel 2:
package com.company;
public class Main {
public static void main(String[] args) {
String one, two, three = two = one = "All three variables will be initialized with this string";
System.out.println(one);
System.out.println(two);
System.out.println(three);
}
}
Ausgabe:
All three variables will be initialized with this string
All three variables will be initialized with this string
All three variables will be initialized with this string
Mehrere Objekte mit der gleichen Klasse in Java initialisieren
Wir haben gesehen, dass wir mit der Technik der verketteten Zuweisung in allen drei String
-Variablen denselben Wert speichern können. Aber können wir dasselbe tun, wenn wir die Referenz desselben Klassenobjekts in mehreren Variablen speichern wollen? Schauen wir mal.
Wenn wir eine Variable mit einem Klassenkonstruktor mit dem Schlüsselwort new
initialisieren, wird diese Variable als object
bezeichnet und sie zeigt auf die Klasse. Wir können mehrere Objekte mit der gleichen Klasse durch verkettete Zuweisung erstellen, aber es wird auf die gleiche Referenz zeigen, was bedeutet, dass, wenn wir den Wert von firstObj
ändern, das secondObj
auch die gleichen Änderungen widerspiegelt.
Wir können das folgende Beispiel überprüfen, in dem die drei Objekte - firstObj
, secondObj
und thirdObj
zusammen zugewiesen werden, aber fourthObj
wird separat zugewiesen. Die Ausgabe zeigt den Unterschied.
package com.company;
public class Main {
public static void main(String[] args) {
SecondClass firstObj, secondObj, thirdObj;
firstObj = secondObj = thirdObj = new SecondClass();
firstObj.aVar = "First Object";
secondObj.aVar = "Second Object";
SecondClass fourthObj = new SecondClass();
fourthObj.aVar = "Fourth Object";
System.out.println(firstObj.aVar);
System.out.println(secondObj.aVar);
System.out.println(thirdObj.aVar);
System.out.println(fourthObj.aVar);
}
}
class SecondClass {
String aVar;
}
Ausgabe:
Second Object
Second Object
Second Object
Fourth Object
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn