Insel

289 Beiträge · Seite 5 von 29

Insel: Apache Commons CSV

· Christian Ullenboom

Eine freie Java-Bibliothek zum Lesen und Schreiben von CSV-Dokumenten ist Apache Commons CSV (https://commons.apache.org/proper/commons-csv/). Sie verwaltet unterschiedliche CSV-Formate wie Microsoft Excel, RFC 4180. Auf der Webseite gibt es einen Download-Link für das Java-Archiv, doch am einfachsten ist die …

Weiterlesen: Insel: Apache Commons CSV →

Inselupdate: Microsoft und Java

· Christian Ullenboom

In der Anfangszeit verursachte Microsoft einigen Wirbel um Java. Mit Visual J++ (gesprochen »Jay Plus Plus«) bot Microsoft schon früh einen eigenen Java-Compiler (als Teil des Microsoft Development Kits) und mit der Microsoft Java Virtual Machine (MSJVM) eine eigene schnelle Laufzeitumgebung. Das Problem war nur, dass …

Weiterlesen: Inselupdate: Microsoft und Java →

Warum ein Lambda-Ausdruck keine lokale Variablen/Parametervariablen beschreiben kann

· Christian Ullenboom

Lambda-Ausdrücke können lokale Variablen nur lesen und nicht beschreiben. Der Grund hat etwas mit der Art und Weise zu tun, wo Variablen gespeichert werden: Objekt- und statische Variablen „leben“ auf dem Heap lokale Variablen und Parameter „leben“ auf dem Stack. Wenn nun Threads ins Spiel kommen ist es nicht …

Weiterlesen: Warum ein Lambda-Ausdruck keine lokale Variablen/Parametervariablen beschreiben kann →

Warum Properties extends Hashtable<Object, Object> und nicht Hashtable<String, String>?

· Christian Ullenboom

Von der Intuition her ist von der Vererbung class Properties extends Hashtable<String, String> naheliegend, doch hat Sun nicht gewollt. Der Grund hat gar nicht so sehr mit Properties selbst zu tun, sondern mit der Basisklasse Hashtable und gewählten Umsetzung der Generics und der gewünschten Kompatibilität. Von Java …

Weiterlesen: Warum Properties extends Hashtable<Object, Object> und nicht Hashtable<String, String>? →

Iterator vom Stream besorgen

· Christian Ullenboom

Sich einen Iterator von einem Stream geben zu lassen ist nützlich, weil dann der Zeitpunkt des Konsumierens vom Zeitpunkt des Stream-Aufbaus getrennt werden kann. Es ist nicht einfach mehrere Streams gleichzeitig abzulaufen, doch mit Iteratoren funktioniert das. Zudem lässt sich in Stream mit einer Generator-Funktion …

Weiterlesen: Iterator vom Stream besorgen →

Tor auf mit CountDownLatch

· Christian Ullenboom

Die Klasse CountDownLatch hilft Threads an einem gewissen Punkt zusammenzukommen und dann weiterzumachen. Das kann ein Thread sein, der auf das Fertigwerden von N anderen Threads wartet oder N Threads, die ein Signal zum Loslaufen bekommen. CountDownLatch ist mit einem Zähler assoziiert, der sich herunterzählen lässt. …

Weiterlesen: Tor auf mit CountDownLatch →