Java: Unterschied zwischen den Versionen
Flinh1 (Diskussion | Beiträge) (→Eingabe über die Konsole (Tastatureingabe)) |
Flinh1 (Diskussion | Beiträge) (→Beispiele) |
||
Zeile 133: | Zeile 133: | ||
(Dank an Hn. K. / javafish.de) | (Dank an Hn. K. / javafish.de) | ||
</nowiki> | </nowiki> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
---- | ---- |
Version vom 25. August 2019, 06:48 Uhr
Inhaltsverzeichnis
Übersetzung von Quellcode in Bytecode
Wenn keine IDE wie Eclipse mit einem Menüpunkt Run zur Verfügung steht, kann man die javaDatei auch auf der Kommandozeile (bash, cmd etc.) übersetzen:
javac
Dateiname.java
Es entsteht eine Datei Dateiname.class, die mit dem Befehl
java
Dateiname
(ohne die Endung class) aufgerufen werden kann.
Importieren von Paketen und Klassen
Import einer einzelnen Klasse:
import java.util.Scanner;
Import aller Klassen eines Pakets:
import java.util.*;
Pakete:
- java.util // z. B. Klasse Scanner
- javax.swing // z. B. Klasse JOptionPane // Methode showInputDialog()
Eingabe über die Konsole (Tastatureingabe)
JOptionPane
import javax.swing.*; public class SwingPane { public static void main(String[] args) { String name = JOptionPane.showInputDialog("Wie ist Ihr Name?"); System.out.println("Sie heißen also " + name + "."); } }
Es öffnet sich eine Dialogbox für die Eingabe. Bei Eingabe einer Zahl muss diese gegebenenfalls mit Integer.parseInt() oder Float.parseFloat() umgewandelt werden.
Die Ausgabe eines Ergebnisses kann ebenfalls über ein Fenster erfolgen: JOptionPane.showMessageDialog(null, "Das Ergebnis lautet: " + ergebnis).
Klasse Scanner
public class Skanner { public static void main(String[] args) { Scanner eingabe = new Scanner(System.in); System.out.println("Geben Sie bitte Ihren Namen ein:"); String name = eingabe.next(); System.out.println("Sie heißen also " + name + "."); } }
Methoden für Scanner:
- next() >> Eingabe eines Wortes
- nextLine() >> Eingabe einer Textzeile
- nextInt() >> Eingabe einer Ganzzahl
- nextFloat() >> Eingabe einer Fließpunktzahl
- nextDouble() >> Eingabe einer Fließpunktzahl
Achtung: nextFloat() und nextDouble() erkennen die Lokalisierung des Rechners. Auf einem "deutschen" Rechner ist die Zahl mit Komma und nicht mit Punkt einzugeben.
Klasse BufferedReader und Methode readLine()
- InputStreamReader erlaubt die Umsetzung eines Bytestreams in einen Zeichenstream. Bytes werden gelesen und in Zeichen dekodiert.
- BufferedReader liefert einen gepufferten Eingabe-Stream für Unicode-Zeichen.[1]
- Die statische Methode readLine() stellt einen formatierten Prompt zur Verfügung und liest dann eine Textzeile von der Konsole.
Beispiel:
import java.io.*; public class MeineEingabe { public static void main(String[] args) throws IOException { String s; BufferedReader eingabe = new BufferedReader(new InputStreamReader(System.in)); System.out.println("Bitte um Tastatureingabe: "); s = eingabe.readLine(); System.out.println("Ausgabe: " + s); } }
Man kann sich auf dieser Grundlage fertige Methoden für die Konsoleneingabe "basteln":
public static String readString() { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { return br.readLine(); } catch (IOException ex) { return ""; } } public static int readInt() { try { return Integer.parseInt(readString()); } catch (NumberFormatException ex) { return 0; } } public static double readDouble() { try { return Double.parseDouble(readString()); } catch (NumberFormatException ex) { return 0.0; } } }
Beispiele für die Verwendung dieser Methoden:
String eingabe = readString(); System.out.println("Die Eingabe lautet: " + eingabe); int intEingabe = readInt(); System.out.println("Die intEingabe lautet: " + intEingabe); double doubleEingabe = readDouble(); System.out.println("Die doubleEingabe lautet: " + doubleEingabe);
(Dank an Hn. K. / javafish.de) </nowiki>
Arbeitswerkzeuge
Eclipse
IntelliJ IDEA
Download für Windows/Mac von
Installation in Ubuntu 18.04[2]:
- sudo -H software-properties-gtk[3][4]
- Im Fenster "Anwendungen & Aktualisierungen" > "Andere Programme" > "Hinzufügen"
- ppa:mmk2410/intellij-idea eingeben
- Im Terminal apt-get install intellij-idea-community ausführen.
Maven[5]-Projekt starten:
- Create New Project
- Maven > Next
- GroupId und ArtifactId eintragen (z. B. jeweils "demo") > Next
- Projektnamen eintragen, es entsteht dann ein gleichnamiges Verzeichnis
Klasse anlegen:
- Im linken Fenster unter Project > [Projektname] > src > main
- mit der rechten Maustaste auf java klicken
- New > Java Class > [dateiname.java] eintragen, OK
Shortcuts:
psmvm
= public static void main(String[] args) {}sout
= System.out.println();
- https://de.wikipedia.org/wiki/IntelliJ_IDEA
- https://www.jetbrains.com/idea/
- https://wiki.ubuntuusers.de/Intellij_IDEA/
Netbeans
JShell
Am Eingabeprompt der JShell kann man unkompliziert Codefragmente testen.
Aufruf im Terminal (Linux): jshell
Aufruf unter Windows (cmd): jshell
. Die Datei jshell.exe liegt im bin-Verzeichnis der jdk-Installation.
Eingaben nachträglich editieren:
/edit
Importierte Klassen anzeigen:
/imports
Quellen
Links
- https://javabeginners.de/index.php
- https://www.java-tutorial.org/
- https://www.java-forum.org/
- https://de.wikibooks.org/wiki/Java_Standard
- https://www.uni-trier.de/fileadmin/urt/doku/java/v80/java8.pdf
- https://www.programmieraufgaben.ch/uploads/java.pdf
- https://trainyourprogrammer.de/
- http://openbook.rheinwerk-verlag.de/javainsel9/javainsel_03_006.htm
- https://openclassrooms.com/fr/courses/26832-apprenez-a-programmer-en-java
Youtube
Bücher
- Hardy, Dirk: Java für IT-Berufe, Haan-Gruiten 2019 (Europa-Lehrmittel)
- Günster, Kai: Einführung in Java
- http://openbook.rheinwerk-verlag.de/javainsel/
- Jung, Elisabeth: Java 9 - Das Übungsbuch, Heidelberg 2017
|