Sie sind auf Seite 1von 24

Thomas Kühne

Java 1

Sun
Geburt (1991-1995)
2.Generation 1999
Open Source 2006
Thomas Kühne

Was ist eigentlich Java?


Programmiersprache Virtuelle Maschine
● „Wie sage ich es?“ ● „Mach das Gesagte“
● .JAVA wird vom ● .CLASS wird vom
Compiler „javac“ in Interpreter „java“
.CLASS umgewandelt ausgeführt

Bibliothek
Damit nicht jeder das Rad bzw. den
Container neu entwickeln muss.
Thomas Kühne

Ganze Zahlen
Typ Bits Minimum Maximum Class
boolean 1 false true java.lang.Boolean
byte 8 -27 27-1 java.lang.Byte
short 16 -215 215-1 java.lang.Short
int 32 -231 231-1 java.lang.Integer
long 64 -263 263-1 java.lang.Long
- beliebig beliebig beliebig java.math.BigInteger

char ist keine Typ mit dem


man normalerweise rechnet:
'1' ist nicht gleich 1!
Thomas Kühne

Boolean
1) boolean a; a=?
2) boolean b = true; a=? b=1
3) boolean c = false; a=? b=1 c=0
4) a = b; // Zuweisung a=1 b=1 c=0
5) a = !b; // Negation a=0 b=1 c=0
6) a = b || c; // Oder a=1 b=1 c=0
7) a = b && c; // Und a=0 b=1 c=0
8) a = b ^ c; // Xor a=1 b=1 c=0
9) a |= (b ^ !c) || (true && c);
Thomas Kühne

Operationen mit ganzen Zahlen


1) byte d = 3 + 4; d=7
2) short e = 5 - 1; d=7 e=4
3) int f = d=7 e=4 f=+...
Integer.MAX_VALUE;
4) long g = f; d=7 e=4 f=+... g=+...
5) f += 1; g += 1; d=7 e=4 f=-... g=+...+1
6) f = 12 / 5; d=7 e=4 f=2 g=+...+1
7) e -= (byte)(d % e);
Thomas Kühne

Vergleiche
a) gleich: a == b
b) ungleich: a != b
c) größer: a>b
d) kleiner: a<b
e) kleiner gleich: a <= b
f) größer gleich: a >= b
Thomas Kühne

Fließkommazahlen
Typ Bits Minimum Maximum Class
float 32 2-126 (2-2-23)·2127 java.lang.Float
double 64 2-1022 (2-2-52)·21023 java.lang.Double
- beliebig beliebig beliebig java.math.BigDecimal

→ java.lang.Math !
Thomas Kühne

Grundstruktur eines Programms


[1] Eingabe
[1] Aufforderung
[2] Einlesen
[3] Überprüfen ob die Eingaben vom Programm
verarbeitet werden können
[2] Berechnung
[1] Vorbereitung
[2] eigentliche Berechnung
[3] Überprüfen ob das Ergebnis sinnvoll ist
[3] Ausgabe
Thomas Kühne

class
(1) public class Demo {
(2) }
Thomas Kühne

main
(1) public class Demo {
(2) public static void main(String[] args){
(3) }
(4) }
Thomas Kühne

Anweisung
(1) public class Demo {
(2) public static void main(String[] args){
(3) System.out.println("Hallo Welt!");
(4) }
(5) }
Thomas Kühne

Import
1) import java.util.Scanner;
2)
3) public class Demo {
4) public static void main(String[] args) {
5) }
6) }
Thomas Kühne

Deklaration
(1) import java.util.Scanner;
(2)
(3) public class Demo {
(4) public static void main(String[] args) {
(5) Scanner s;
(6) }
(7) }
Thomas Kühne

new
(1) import java.util.Scanner;
(2)
(3) public class Demo {
(4) public static void main(String[] args) {
(5) Scanner s;
(6) new Scanner(System.in);
(7) }
(8) }
Thomas Kühne

Zuweisung
(1) import java.util.Scanner;
(2)
(3) public class Demo {
(4) public static void main(String[] args) {
(5) Scanner s;
(6) s = new Scanner(System.in);
(7) }
(8) }
Thomas Kühne

mini-Programm
(1) import java.util.Scanner;
(2) public class Echo {
(3) public static void main(String[] args) {
(4) System.out.println("Geben Sie bitte Text ein:");
(5) Scanner s = new Scanner(System.in);
(6) String zeile = s.next();
(7) System.out.println("Das erste Wort ist " + zeile + ".");
(8) }
(9) }
Thomas Kühne

throws
(1) import java.io.InputStreamReader;
(2) public class Thrown {
(3) public static void main( String[] args) throws Exception {
(4) InputStreamReader reader;
(5) reader = new InputStreamReader(System.in);
(6) reader.read();
(7) }
(8) }
Thomas Kühne

if / else
(1) import java.util.Scanner;
(2) public class Demo {
(3) public static void main(String[] args) {
(4) System.out.println("Eine ganze Zahl bitte:");
(5) Scanner s = new Scanner(System.in);
(6) if(1 <= s.nextInt()){
(7) System.out.println("Fall A");
(8) }else{
(9) System.out.println("Fall B");
(10) }
(11) System.out.println("Fall C");
(12) }
(13) }
Thomas Kühne

for
(1) public class Demo {
(2) public static void main(String[] args) {
(3) for(int i = 3; i < 6; i++){
(4) System.out.println("A " + i);
(5) }
(6) System.out.println("B");
(7) }
(8) }
Thomas Kühne

while
(1) public class Demo {
(2) public static void main(String[] args) {
(3) int i = 6;
(4) while(i > 3){
(5) System.out.println("A " + i);
(6) i--;
(7) }
(8) System.out.println("B " + i);
(9) }
(10) }
Thomas Kühne

do - while
(1) public class Demo {
(2) public static void main(String[] args) {
(3) int i = 6;
(4) do{
(5) System.out.println("A " + i);
(6) i--;
(7) }while(7 < i);
(8) System.out.println("B " + i);
(9) }
(10) }
Thomas Kühne

break
(1) public class Demo {
(2) public static void main(String[] args) {
(3) for(int i = 3; i < 6; i++){
(4) if(5 == i){
(5) break;
(6) }
(7) System.out.println("A " + i);
(8) }
(9) System.out.println("B");
(10) }
(11) }
Thomas Kühne

return
(1) public class Demo {
(2) public static void main(String[] args) {
(3) for(int i = 3; i < 6; i++){
(4) if(5 == i){
(5) return;
(6) }
(7) System.out.println("A " + i);
(8) }
(9) System.out.println("B");
(10) }
(11) }
Thomas Kühne

Nächstes Mal
A) Fehler
A) Der Compiler hat immer recht.
B) Der Interpreter hat immer recht.
B) Einige weitere Buchstaben aus dem Java
Alphabet.
C) Wie die Buchstaben zu Wörtern
zusammengefügt werden.
Oder: Wie löst man Hausaufgaben?