Sep 20

Wie ist der Output des folgenden Codes?

ArrayList Mitarbeiter = new ArrayList();
Mitarbeiter.add(5);
Integer mitarbeiter= Mitarbeiter.get(0);
System.out.println(mitarbeiter);

Antwort/ answer
Tagged with:
Sep 17

ArrayIndexOutOfBoundsException tritt immer dann auf, wenn auf einen Index im Array zugegriffen werden soll, der nicht vorhanden ist:

int a [ ] = {10,20};
a[2]=30;

Dies wird nicht vom Compiler abgefangen, sondern es wird von der JVM zur Laufzeit eine Exception geworfen.

Tagged with:
Aug 20

Wie ist der Output des folgenden Codes?

Number[]a = new Integer[3];
System.out.println(a[2]);

Antwort/ answer
Tagged with:
Aug 07

Für Arrays gibt es zusätzlich eine veränderte/ erweiterte  Form der for-Schleife; statt

for (int b=0; b<a.length; b++)

System.out.println(a[b]);

hat

for (int b : a)

System.out.println(b);

den gleichen Effekt.

Tagged with:
Mai 22

Was ist der Output des folgenden Codes:

String [] a = {“eins”,”zwei”};
System.out.print(a.length);
System.out.print(a[0].length());

Antwort/ answer

Tagged with:
Mrz 31

collections und Arrays lassen sich auf die gleiche Art und Weise serialisieren wie Objekte;

Definitionen:

ArrayList <String> a= new ArrayList <String>();
a.add(“Hello “);
a.add(“World “);
a.add(“serialized “);

int [] b = {1,2,3};

Wegschreiben mit ObjectOutputStream:

os.writeObject(a);
os.writeObject(b);

De-Serialisierung mit ObjectInputStream:

a=(ArrayList) ois.readObject();
b=(int[]) ois.readObject();

Auch hier ist zu beachten,dass jedes einzelne Element serialisiert werden muss. Ausnahmen führen zu einem Laufzeitfehler (NotSerializableException).  Zu beachten ist auch, das das Collection-Interface selbst nicht serialisierbar ist, die konkrete Klasse aber schon.

Tagged with:
Sep 26

Man könnte meinen, mit der Umwandlung eines Arrays in eine List (oder umgekehrt), dass nun zwei voneinander unabhängige Datensammlungen existieren, aber nein, so ist es nicht. Beide werden so miteinander verknüpft, dass alle Datenänderungen bei einer Datensammlung sich auf die andere auswirkt

Hier ein Beispiel:

String a [] = {“Mailand”, “Berlin”, “Rom”};

List <String> b = Arrays.asList(a);

b.set(2,”Madrid”);
a[0]=”Paris”;

for (int i = 0; i<b.size(); i++)

System.out.print(b.get(i)+” “);

Die Ausgabe lautet:

Paris Berlin Madrid

Jede Datenänderung in einer Datensammlung wirkt sich automatisch auf die andere aus. Daher sind auch Erweiterung der List durch zusätzliche Einträge nicht möglich, da für das Array ja eine feste Größe definiert wurde, die nicht überschritten werden kann.

Tagged with:
Sep 23

Der eine oder andere mag schon gedacht haben; dass zwischen Arrays und List eigentlich kein riesig großer Unterschied besteht …. und recht hat er.

Deswegen kann man auch Listen in Arrays und Arrays in Listen umwandeln.

Die Komandos sind relativ einfach:

String a [] = {“Mailand”, “Berlin”, “Rom”};
List b <String>= Arrays.asList(a);
// Verwandlung eines Arrays in eine Liste

beziehungsweise

Object []c = b.toArray(); // Umwandlung der List in ein Array von Objekten
String [] d = new String[3];
d =b.toArray(d);
// Umwandlung der List in ein String-Array, hierfür muss aber die List explizit als String deklariert worden sein, ansonsten gibt es einen CompilerFehler (Type mismatch)

Tagged with:
Sep 20

Wir steigern den Schwierigkeitsgrad und nehmen zusätlich noch Comparator mit in unser Beispiel:

class Angestellter{

public static void main(String[] args) {

String a [] = {“Mailand”, “Berlin”, “Rom”};

NameSort ns = new NameSort();

Arrays.sort(a,ns); // Sortierung mit Comparator

System.out.println(Arrays.binarySearch(a,”Paris”, ns)); // Suche analog Sortierung mit Comparator

}

}


class NameSort implements Comparator <String>{

public int compare(String a ,String b){

return (b.compareTo(a));

}

}

Wichtig ist, immer gleichbleibend zu handeln, also entweder bei Sortierung und Suche den Comparator mit einzubeziehen oder diesem komplett wegzulassen.   Wie schon vor ein paar Tagen erwähnt funktioniert der Comparator bei primitiven Datentypen nicht.

Tagged with:
Sep 17

Wir haben ja bereits Arrays.binarySearch(Obj,Suchstring) und das Ergebnis einer erfolgreichen Suche kennengelernt.

Was passiert aber, wenn die Suche nicht erfolgreich ist, wie in unserem nächsten Beispiel:

class Angestellter{

public static void main(String[] args) {

String a [] = {“Mailand”, “Berlin”, “Rom”};

Arrays.sort(a);

System.out.println(Arrays.binarySearch(a,”Paris”));

}

}

Die Ausgabe hier wäre -3; ziemlich verwirrend, oder?

Das minus-Zeichen zeigt an, das das Element nicht gefunden wurde.

Da der Wert 0 schon bei einer erfolgreichen Suche zurückgegeben wird (falls das gesuchte Element an der ersten Stelle steht und somit den index 0 hat), wird von -1 a (für das mögliche Einfügen an erster Stelle) heruntergezählt.

Tagged with:
preload preload preload
http://www.wikio.de Blog Top Liste - by TopBlogs.de Blogverzeichnis - Blog Verzeichnis bloggerei.de Bloggeramt.de Software
Webbhotell Top Blogs