Subjects

Knowunity AI

Open the App

Subjects

InformatikInformatik1,870 views·Updated Jun 28, 2026·15 pages

Einführung in Java-Programmierung - Informatik Grundkurs Q1

user profile picture
dmstjf@dms_tjf

Java bildet das Fundament für moderne Softwareentwicklung und ihr lernt...

1
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

JAVA Grundlagen - Datentypen und Variablen

Stellt euch vor, ihr müsst verschiedene Gegenstände in Schachteln sortieren - genau so funktionieren Datentypen in Java! Es gibt zwei Hauptkategorien: primitive Typen (werden direkt gespeichert) und komplexe Typen (werden über Referenzen angesprochen).

Die wichtigsten primitiven Datentypen sind int für ganze Zahlen, double für Kommazahlen, boolean für true/false-Werte und char für einzelne Zeichen. String ist dagegen ein komplexer Datentyp für ganzen Text.

Bei der Deklaration legt ihr den Datentyp fest, bei der Initialisierung gebt ihr den ersten Wert. Variablennamen müssen mit einem Buchstaben beginnen und dürfen keine Leerzeichen enthalten.

Vergleichsoperatoren wie ==, !=, <, > helfen euch dabei, Werte zu vergleichen und geben immer einen boolean-Wert zurück. Das ist die Grundlage für alle Entscheidungen in euren Programmen.

Tipp: Primitive Datentypen beginnen immer mit Kleinbuchstaben, da es gleichnamige Klassen gibt!

2
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Logische Operatoren und mathematische Funktionen

Jetzt wird's richtig mächtig! Logische Operatoren verknüpfen mehrere Bedingungen miteinander. Mit && (UND) müssen beide Bedingungen wahr sein, mit || (ODER) reicht eine wahre Bedingung aus.

Der !-Operator dreht einen Wahrheitswert ins Gegenteil um - aus true wird false und umgekehrt. Das exklusive ODER (^) ist nur dann wahr, wenn genau eine der beiden Bedingungen erfüllt ist.

Für mathematische Berechnungen stellt Java praktische Funktionen bereit: Math.sqrt(x) für Wurzeln, Math.PI für die Kreiszahl π und Math.pow() für Potenzen.

Mit Math.random() generiert ihr Zufallszahlen zwischen 0 und 1 - multipliziert sie einfach mit eurem gewünschten Maximalwert!

Merkhilfe: && ist strenger als || - beim UND müssen ALLE Bedingungen stimmen, beim ODER reicht EINE!

3
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Kontrollstrukturen - If und Switch

Endlich könnt ihr euren Code Entscheidungen treffen lassen! Die if-Anweisung ist wie eine Weggabelung - je nach Bedingung wird ein anderer Pfad gewählt. Mit else if könnt ihr mehrere Bedingungen hintereinander prüfen.

if (note >= 4) {
    System.out.println("Bestanden!");
} else {
    System.out.println("Durchgefallen!");
}

Die switch-Anweisung ist perfekt, wenn ihr viele verschiedene Werte einer Variable abfragen wollt. Statt endloser if-else-Ketten nutzt ihr case-Zweige für jeden möglichen Wert.

Das break nach jedem case ist super wichtig - sonst "rutscht" das Programm in die nächsten Fälle durch! Der default-Zweig fängt alle anderen Werte ab, die nicht explizit behandelt wurden.

Wichtig: Switch funktioniert nur mit ganzzahligen Datentypen und Strings - nicht mit double oder boolean!

4
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Schleifen für wiederholende Aufgaben

Schleifen sind eure Zeitsparer! Statt 100 Zeilen zu schreiben, lasst ihr das Programm die Arbeit wiederholen. Es gibt drei Schleifentypen: while, do-while und for.

Die while-Schleife prüft die Bedingung am Anfang - wenn sie falsch ist, läuft die Schleife gar nicht erst. Die do-while-Schleife führt den Code mindestens einmal aus, da sie erst am Ende prüft.

for (int i = 0; i < 10; i++) {
    System.out.println("Durchlauf: " + i);
}

Die for-Schleife ist ideal für Zählvorgänge. Ihr definiert Startwert, Bedingung und Schrittweite in einer kompakten Zeile. Sie ist besonders praktisch für Arrays.

Jede Schleife hat ihren Einsatzzweck: while für unbekannte Wiederholungen, do-while wenn mindestens ein Durchlauf nötig ist, for zum Zählen.

Achtung: Endlosschleifen entstehen, wenn die Bedingung nie false wird - prüft eure Schleifen immer!

5
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Eingabe, Ausgabe und Arrays

Mit der Scanner-Klasse macht ihr eure Programme interaktiv! Nach dem Import java.util.Scanner erstellt ihr ein Scanner-Objekt und könnt verschiedene Datentypen einlesen: nextInt() für ganze Zahlen, nextLine() für Text.

Scanner input = new Scanner(System.in);
int zahl = input.nextInt();

Für die Ausgabe nutzt ihr System.out.println() (mit Zeilenumbruch) oder System.out.print() (ohne Zeilenumbruch). Variablen verknüpft ihr mit dem +-Operator.

Arrays sind wie Schubladenschränke - jede Schublade hat eine Nummer (Index) und kann einen Wert speichern. Alle Werte müssen denselben Datentyp haben. Der Index startet bei 0!

Arrays deklariert ihr mit int[] name = new int[größe] oder füllt sie direkt: int[] zahlen = {1, 2, 3, 4, 5}. Mit name.length erfahrt ihr die Array-Größe.

Wichtig: Array-Indizes starten bei 0 - bei 5 Elementen sind die Indizes 0 bis 4!

6
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Array-Anwendungen in der Praxis

Arrays werden richtig spannend, wenn ihr sie für konkrete Aufgaben nutzt! Zufallszahlen füllt ihr mit einer for-Schleife und Math.random() ins Array. Für das Maximum durchlauft ihr alle Elemente und merkt euch den größten Wert.

int max = array[0];
for (int i = 1; i < array.length; i++) {
    if (array[i] > max) {
        max = array[i];
    }
}

Den Durchschnitt berechnet ihr, indem ihr alle Werte addiert und durch die Anzahl teilt. Arrays umkehren könnt ihr entweder mit einem zweiten Array oder durch geschicktes Vertauschen der Elemente.

Beim Umkehren mit einem Array tauscht ihr die Positionen: Erstes Element mit Letztem, Zweites mit Vorletztem usw. Eine Hilfsvariable speichert dabei temporär einen der Werte.

Diese Array-Operationen sind Grundbausteine für komplexere Algorithmen - übt sie gut, denn sie kommen in vielen Programmieraufgaben vor!

Tipp: Nutzt aussagekräftige Variablennamen wie max oder durchschnitt - das macht euren Code verständlicher!

7
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Suchalgorithmen verstehen und anwenden

Suchalgorithmen helfen euch dabei, bestimmte Werte in großen Datenmengen zu finden. Die lineare Suche ist der einfachste Ansatz - ihr durchlauft das Array von Anfang bis Ende und vergleicht jedes Element.

for (int i = 0; i < array.length; i++) {
    if (array[i] == suchWert) {
        System.out.println("Gefunden an Position: " + i);
    }
}

Die binäre Suche ist deutlich effizienter, funktioniert aber nur bei sortierten Arrays. Ihr teilt das Suchgebiet immer in der Mitte und entscheidet, in welcher Hälfte ihr weitersucht.

Bei der Laufzeit zeigt sich der große Unterschied: Lineare Suche braucht im schlimmsten Fall O(n) Schritte, binäre Suche nur O(log n). Bei 1000 Elementen sind das 1000 vs. 10 Schritte!

Die binäre Suche halbiert den Suchbereich bei jedem Schritt - deshalb ist sie so schnell. Der Preis: Das Array muss sortiert sein.

Faustregel: Lineare Suche für kleine oder unsortierte Arrays, binäre Suche für große sortierte Datenmengen!

8
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Selection Sort - Sortieren durch Auswählen

Sortieralgorithmen bringen Ordnung in eure Daten! Selection Sort ist intuitiv verständlich: Ihr sucht das kleinste Element und tauscht es an die erste Position, dann das zweitkleinste an die zweite Position usw.

Der Algorithmus teilt das Array gedanklich in einen sortierten und einen unsortierten Bereich. Anfangs ist nur der sortierte Bereich leer, am Ende ist das ganze Array sortiert.

for (int i = 0; i < array.length; i++) {
    int minIndex = i;
    for (int j = i + 1; j < array.length; j++) {
        if (array[j] < array[minIndex]) {
            minIndex = j;
        }
    }
    // Tauschen der Elemente
}

Die Laufzeit ist immer O(n²) - egal ob das Array schon teilweise sortiert ist oder völlig durcheinander. Das macht Selection Sort vorhersagbar, aber nicht besonders schnell.

Der Vorteil: Selection Sort macht die wenigsten Tauschoperationen und ist einfach zu verstehen und implementieren.

Eigenschaft: Selection Sort ist "stabil" - die Reihenfolge gleicher Elemente bleibt erhalten!

9
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Insertion Sort - Sortieren durch Einfügen

Insertion Sort funktioniert wie das Sortieren von Spielkarten in der Hand: Ihr nehmt eine Karte und fügt sie an der richtigen Stelle in die bereits sortierte Kartensammlung ein.

Der Algorithmus startet beim zweiten Element und fügt es in den bereits sortierten Teil (anfangs nur das erste Element) ein. Dann das dritte Element, dann das vierte usw.

for (int i = 1; i < array.length; i++) {
    for (int j = i; j > 0 && array[j] < array[j-1]; j--) {
        // Elemente tauschen
        int temp = array[j];
        array[j] = array[j-1];
        array[j-1] = temp;
    }
}

Die Laufzeit variiert stark: Bei bereits sortierten Arrays nur O(n), bei völlig unsortierten O(n²). Das macht Insertion Sort besonders gut für teilweise sortierte Daten.

Insertion Sort ist "adaptiv" - je besser die Daten schon sortiert sind, desto schneller wird er. Deshalb wird er oft bei kleinen Arrays oder als Ergänzung zu anderen Algorithmen verwendet.

Vorteil: Insertion Sort arbeitet "in-place" - braucht keinen zusätzlichen Speicherplatz!

10
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Bubble Sort und Algorithmus-Vergleich

Bubble Sort ist der berühmteste Sortieralgorithmus - leider nicht wegen seiner Effizienz! Er vergleicht benachbarte Elemente und tauscht sie, wenn sie in der falschen Reihenfolge stehen.

Das größte Element "blubbert" wie eine Luftblase nach oben (daher der Name). Nach dem ersten Durchlauf steht das größte Element am Ende, nach dem zweiten das zweitgrößte usw.

for (int i = array.length - 1; i > 0; i--) {
    for (int j = 0; j < i; j++) {
        if (array[j] > array[j + 1]) {
            // Elemente tauschen
        }
    }
}

Algorithmus-Vergleich: Alle drei haben O(n²) Laufzeit, aber unterschiedliche Stärken. Selection Sort macht die wenigsten Tauschoperationen, Insertion Sort ist am schnellsten bei vorsortieren Daten.

Bubble Sort ist am langsamsten, da er die meisten Tauschoperationen braucht. Er wird hauptsächlich zum Lernen verwendet, nicht in der Praxis. Für echte Projekte gibt es effizientere Algorithmen wie Quicksort oder Mergesort.

Fazit: Wählt Selection Sort für große unsortierte Arrays, Insertion Sort für kleine teilsortierte Arrays!

We thought you’d never ask...

What is the Knowunity AI companion?

Our AI companion is specifically built for the needs of students. Based on the millions of content pieces we have on the platform we can provide truly meaningful and relevant answers to students. But its not only about answers, the companion is even more about guiding students through their daily learning challenges, with personalised study plans, quizzes or content pieces in the chat and 100% personalisation based on the students skills and developments.

Where can I download the Knowunity app?

You can download the app in the Google Play Store and in the Apple App Store.

Is Knowunity really free of charge?

That's right! Enjoy free access to study content, connect with fellow students, and get instant help – all at your fingertips.

Most popular content: Java

2

Most popular content in Informatik

9
InformatikInformatik

Informatik GK Lernzettel Abitur 2025

- selbstständig erstellter Lernzettel

1278317
Q
InformatikInformatik

Quiz für die Komponenten des Pc's💻

💻Hier lernst ind testest du dein wissen über die Pc Komponenten⌨️

65864
InformatikInformatik

Informatik Abitur 2024: Themenübersicht

Umfassende Themenübersicht für das Abitur 2024 im Fach Informatik. Dieser Lernzettel deckt wichtige Konzepte wie Programmierung in Java, Algorithmen, Datenstrukturen, Datenbanken, Cybersecurity und Verschlüsselungsmethoden ab. Ideal für Schüler, die sich auf das erhöhte Anforderungsniveau vorbereiten. Enthält auch Informationen zu relationalen Datenbanken, SQL-Abfragen und kryptologischen Verfahren.

132,84958
C
InformatikInformatik

Computer

Lerne alles über Computer und ihre Funktionsweise mit diesen fesselnden Flashcards. Perfekt für Schüler der 5. Klasse, die Computer Science entdecken möchten.

55360
InformatikInformatik

Informatik Abitur 2024: Datenstrukturen & Datenbanken

Umfassender Lernzettel für das Informatik-Abitur 2024, der sich auf lineare Datenstrukturen, relationale Datenbanken, SQL-Abfragen und Automaten konzentriert. Ideal zur Vorbereitung auf Prüfungen mit Schwerpunkten auf Sortieralgorithmen, Datenbankmodellierung und Java-Programmierung.

112,52447
InformatikInformatik

Informatik Abitur 2025 NRW

Informatik Übersicht zu den Themen die im mündlichen Abitur drankommen. Ist also vielleicht nicht zu 100% vollständig.

124599
InformatikInformatik

WENN und SVERWEIS

Erklärung sverweis und wenn Funktion bei exel

116233
InformatikInformatik

Python Lernzettel Informatik

Python Lernzettel (mathematische Operatoren, Variablen, Datentypen, Skripte, Boolesche Operatoren)

118698
InformatikInformatik

Informatik Grundlagen: Datenstrukturen & Algorithmen

Dieser Lernzettel bietet eine umfassende Übersicht über grundlegende Konzepte der Informatik, einschließlich Objekte und Klassen, lineare und nicht-lineare Datenstrukturen, Sortier- und Suchalgorithmen, Bäume, Struktogramme, relationale Datenbanken, SQL-Abfragen, formale Sprachen und Automaten sowie Netzwerktopologien. Ideal für die Vorbereitung auf das Abitur in NRW.

131,40031

Most popular content

9
DeutschDeutsch

Der zerbrochene Krug

Szenenzusammenfassunfen, Figurenkonstellationen, Aufbau des Stücks, Sprache und Stilbesonderheiten, Aussageabsicht, Thematik, Interpretation

1148,034728
DeutschDeutsch

Der zerbrochene Krug von Heinrich von Kleist

Hier steht so ziemlich alles drinnen von Zusammenfassungen der einzelnen Auftritte bis hin zu den einzelnen Perosn und noch einiges mehr

1254,769921
DeutschDeutsch

Der zerbrochne Krug

Ausführliche Lernzettel zu: Basisdaten, Handlung, ausführliche Zusammenfassungen der Auftritte, zentrale Themen, Symbolische Bedeutung, Merkmale der Komödie

1214,327253
DeutschDeutsch

Heimsuchung_JennyErpenbeck_Abitur

Zusammenfassungen für jedes Kapitel, Analysen und Zitate

1314,076277
MatheMathe

ZP10 Mathe Zusammenfassung NRW

Lernzettel für die ZP10 Mathe in NRW mit allen Themen außer Sinusfunktionen.

1061,9114,842
DeutschDeutsch

Der zerbrochene Krug: Analyse

Diese umfassende Analyse von 'Der zerbrochene Krug' von Heinrich von Kleist bietet eine detaillierte Kapitelzusammenfassung, Charakterisierungen, historische Kontexte, sowie den Aufbau und die sprachlichen Merkmale des Dramas. Ideal für Studierende, die sich auf Prüfungen vorbereiten oder tiefere Einblicke in Kleists Werk gewinnen möchten.

1199,8391,255
EnglischEnglisch

Englisch LK Abitur 2025

Komplette Englisch LK Abi Zusammenfassung 2025

1315,040394
DeutschDeutsch

Schreibkompetenzen Deutsch LK

Diese umfassende Zusammenstellung bereitet auf das Abitur 2024 vor und deckt alle relevanten Schreibkompetenzen ab: von der Analyse pragmatischer Texte über die Erörterung literarischer Werke bis hin zur Interpretation von Epik, Lyrik und Dramatik. Zudem werden Techniken des materialgestützten Schreibens, der Redeanalyse sowie journalistische Textsorten und rhetorische Mittel behandelt. Ideal für eine gezielte und effektive Prüfungsvorbereitung.

138,207165
DeutschDeutsch

Jenny Erpenbeck "Heimsuchung"

Übersicht und Struktur des Romans

117,998168

Can't find what you're looking for? Explore other subjects.

Students love us — and so will you.

4.6/5App Store
4.7/5Google Play

The app is very easy to use and well designed. I have found everything I was looking for so far and have been able to learn a lot from the presentations! I will definitely use the app for a class assignment! And of course it also helps a lot as an inspiration.

Stefan SiOS user

This app is really great. There are so many study notes and help [...]. My problem subject is French, for example, and the app has so many options for help. Thanks to this app, I have improved my French. I would recommend it to anyone.

Samantha KlichAndroid user

Wow, I am really amazed. I just tried the app because I've seen it advertised many times and was absolutely stunned. This app is THE HELP you want for school and above all, it offers so many things, such as workouts and fact sheets, which have been VERY helpful to me personally.

AnnaiOS user
InformatikInformatik1,870 views·Updated Jun 28, 2026·15 pages

Einführung in Java-Programmierung - Informatik Grundkurs Q1

user profile picture
dmstjf@dms_tjf

Java bildet das Fundament für moderne Softwareentwicklung und ihr lernt hier die essentiellen Bausteine kennen. Von Datentypen über Kontrollstrukturen bis hin zu Such- und Sortieralgorithmen - diese Grundlagen braucht ihr für jedes größere Programmierprojekt.

1
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

JAVA Grundlagen - Datentypen und Variablen

Stellt euch vor, ihr müsst verschiedene Gegenstände in Schachteln sortieren - genau so funktionieren Datentypen in Java! Es gibt zwei Hauptkategorien: primitive Typen (werden direkt gespeichert) und komplexe Typen (werden über Referenzen angesprochen).

Die wichtigsten primitiven Datentypen sind int für ganze Zahlen, double für Kommazahlen, boolean für true/false-Werte und char für einzelne Zeichen. String ist dagegen ein komplexer Datentyp für ganzen Text.

Bei der Deklaration legt ihr den Datentyp fest, bei der Initialisierung gebt ihr den ersten Wert. Variablennamen müssen mit einem Buchstaben beginnen und dürfen keine Leerzeichen enthalten.

Vergleichsoperatoren wie ==, !=, <, > helfen euch dabei, Werte zu vergleichen und geben immer einen boolean-Wert zurück. Das ist die Grundlage für alle Entscheidungen in euren Programmen.

Tipp: Primitive Datentypen beginnen immer mit Kleinbuchstaben, da es gleichnamige Klassen gibt!

2
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Logische Operatoren und mathematische Funktionen

Jetzt wird's richtig mächtig! Logische Operatoren verknüpfen mehrere Bedingungen miteinander. Mit && (UND) müssen beide Bedingungen wahr sein, mit || (ODER) reicht eine wahre Bedingung aus.

Der !-Operator dreht einen Wahrheitswert ins Gegenteil um - aus true wird false und umgekehrt. Das exklusive ODER (^) ist nur dann wahr, wenn genau eine der beiden Bedingungen erfüllt ist.

Für mathematische Berechnungen stellt Java praktische Funktionen bereit: Math.sqrt(x) für Wurzeln, Math.PI für die Kreiszahl π und Math.pow() für Potenzen.

Mit Math.random() generiert ihr Zufallszahlen zwischen 0 und 1 - multipliziert sie einfach mit eurem gewünschten Maximalwert!

Merkhilfe: && ist strenger als || - beim UND müssen ALLE Bedingungen stimmen, beim ODER reicht EINE!

3
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Kontrollstrukturen - If und Switch

Endlich könnt ihr euren Code Entscheidungen treffen lassen! Die if-Anweisung ist wie eine Weggabelung - je nach Bedingung wird ein anderer Pfad gewählt. Mit else if könnt ihr mehrere Bedingungen hintereinander prüfen.

if (note >= 4) {
    System.out.println("Bestanden!");
} else {
    System.out.println("Durchgefallen!");
}

Die switch-Anweisung ist perfekt, wenn ihr viele verschiedene Werte einer Variable abfragen wollt. Statt endloser if-else-Ketten nutzt ihr case-Zweige für jeden möglichen Wert.

Das break nach jedem case ist super wichtig - sonst "rutscht" das Programm in die nächsten Fälle durch! Der default-Zweig fängt alle anderen Werte ab, die nicht explizit behandelt wurden.

Wichtig: Switch funktioniert nur mit ganzzahligen Datentypen und Strings - nicht mit double oder boolean!

4
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Schleifen für wiederholende Aufgaben

Schleifen sind eure Zeitsparer! Statt 100 Zeilen zu schreiben, lasst ihr das Programm die Arbeit wiederholen. Es gibt drei Schleifentypen: while, do-while und for.

Die while-Schleife prüft die Bedingung am Anfang - wenn sie falsch ist, läuft die Schleife gar nicht erst. Die do-while-Schleife führt den Code mindestens einmal aus, da sie erst am Ende prüft.

for (int i = 0; i < 10; i++) {
    System.out.println("Durchlauf: " + i);
}

Die for-Schleife ist ideal für Zählvorgänge. Ihr definiert Startwert, Bedingung und Schrittweite in einer kompakten Zeile. Sie ist besonders praktisch für Arrays.

Jede Schleife hat ihren Einsatzzweck: while für unbekannte Wiederholungen, do-while wenn mindestens ein Durchlauf nötig ist, for zum Zählen.

Achtung: Endlosschleifen entstehen, wenn die Bedingung nie false wird - prüft eure Schleifen immer!

5
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Eingabe, Ausgabe und Arrays

Mit der Scanner-Klasse macht ihr eure Programme interaktiv! Nach dem Import java.util.Scanner erstellt ihr ein Scanner-Objekt und könnt verschiedene Datentypen einlesen: nextInt() für ganze Zahlen, nextLine() für Text.

Scanner input = new Scanner(System.in);
int zahl = input.nextInt();

Für die Ausgabe nutzt ihr System.out.println() (mit Zeilenumbruch) oder System.out.print() (ohne Zeilenumbruch). Variablen verknüpft ihr mit dem +-Operator.

Arrays sind wie Schubladenschränke - jede Schublade hat eine Nummer (Index) und kann einen Wert speichern. Alle Werte müssen denselben Datentyp haben. Der Index startet bei 0!

Arrays deklariert ihr mit int[] name = new int[größe] oder füllt sie direkt: int[] zahlen = {1, 2, 3, 4, 5}. Mit name.length erfahrt ihr die Array-Größe.

Wichtig: Array-Indizes starten bei 0 - bei 5 Elementen sind die Indizes 0 bis 4!

6
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Array-Anwendungen in der Praxis

Arrays werden richtig spannend, wenn ihr sie für konkrete Aufgaben nutzt! Zufallszahlen füllt ihr mit einer for-Schleife und Math.random() ins Array. Für das Maximum durchlauft ihr alle Elemente und merkt euch den größten Wert.

int max = array[0];
for (int i = 1; i < array.length; i++) {
    if (array[i] > max) {
        max = array[i];
    }
}

Den Durchschnitt berechnet ihr, indem ihr alle Werte addiert und durch die Anzahl teilt. Arrays umkehren könnt ihr entweder mit einem zweiten Array oder durch geschicktes Vertauschen der Elemente.

Beim Umkehren mit einem Array tauscht ihr die Positionen: Erstes Element mit Letztem, Zweites mit Vorletztem usw. Eine Hilfsvariable speichert dabei temporär einen der Werte.

Diese Array-Operationen sind Grundbausteine für komplexere Algorithmen - übt sie gut, denn sie kommen in vielen Programmieraufgaben vor!

Tipp: Nutzt aussagekräftige Variablennamen wie max oder durchschnitt - das macht euren Code verständlicher!

7
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Suchalgorithmen verstehen und anwenden

Suchalgorithmen helfen euch dabei, bestimmte Werte in großen Datenmengen zu finden. Die lineare Suche ist der einfachste Ansatz - ihr durchlauft das Array von Anfang bis Ende und vergleicht jedes Element.

for (int i = 0; i < array.length; i++) {
    if (array[i] == suchWert) {
        System.out.println("Gefunden an Position: " + i);
    }
}

Die binäre Suche ist deutlich effizienter, funktioniert aber nur bei sortierten Arrays. Ihr teilt das Suchgebiet immer in der Mitte und entscheidet, in welcher Hälfte ihr weitersucht.

Bei der Laufzeit zeigt sich der große Unterschied: Lineare Suche braucht im schlimmsten Fall O(n) Schritte, binäre Suche nur O(log n). Bei 1000 Elementen sind das 1000 vs. 10 Schritte!

Die binäre Suche halbiert den Suchbereich bei jedem Schritt - deshalb ist sie so schnell. Der Preis: Das Array muss sortiert sein.

Faustregel: Lineare Suche für kleine oder unsortierte Arrays, binäre Suche für große sortierte Datenmengen!

8
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Selection Sort - Sortieren durch Auswählen

Sortieralgorithmen bringen Ordnung in eure Daten! Selection Sort ist intuitiv verständlich: Ihr sucht das kleinste Element und tauscht es an die erste Position, dann das zweitkleinste an die zweite Position usw.

Der Algorithmus teilt das Array gedanklich in einen sortierten und einen unsortierten Bereich. Anfangs ist nur der sortierte Bereich leer, am Ende ist das ganze Array sortiert.

for (int i = 0; i < array.length; i++) {
    int minIndex = i;
    for (int j = i + 1; j < array.length; j++) {
        if (array[j] < array[minIndex]) {
            minIndex = j;
        }
    }
    // Tauschen der Elemente
}

Die Laufzeit ist immer O(n²) - egal ob das Array schon teilweise sortiert ist oder völlig durcheinander. Das macht Selection Sort vorhersagbar, aber nicht besonders schnell.

Der Vorteil: Selection Sort macht die wenigsten Tauschoperationen und ist einfach zu verstehen und implementieren.

Eigenschaft: Selection Sort ist "stabil" - die Reihenfolge gleicher Elemente bleibt erhalten!

9
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Insertion Sort - Sortieren durch Einfügen

Insertion Sort funktioniert wie das Sortieren von Spielkarten in der Hand: Ihr nehmt eine Karte und fügt sie an der richtigen Stelle in die bereits sortierte Kartensammlung ein.

Der Algorithmus startet beim zweiten Element und fügt es in den bereits sortierten Teil (anfangs nur das erste Element) ein. Dann das dritte Element, dann das vierte usw.

for (int i = 1; i < array.length; i++) {
    for (int j = i; j > 0 && array[j] < array[j-1]; j--) {
        // Elemente tauschen
        int temp = array[j];
        array[j] = array[j-1];
        array[j-1] = temp;
    }
}

Die Laufzeit variiert stark: Bei bereits sortierten Arrays nur O(n), bei völlig unsortierten O(n²). Das macht Insertion Sort besonders gut für teilweise sortierte Daten.

Insertion Sort ist "adaptiv" - je besser die Daten schon sortiert sind, desto schneller wird er. Deshalb wird er oft bei kleinen Arrays oder als Ergänzung zu anderen Algorithmen verwendet.

Vorteil: Insertion Sort arbeitet "in-place" - braucht keinen zusätzlichen Speicherplatz!

10
of 10
# JAVA - Grundlagen

Datentypen

*   zwei verschiedene Datentypen :
    *   -> primitive Typen: werden direkt in der Variable gespeichert

Sign up to see the content. It's free!

  • Access to all documents
  • Improve your grades
  • Join milions of students

Bubble Sort und Algorithmus-Vergleich

Bubble Sort ist der berühmteste Sortieralgorithmus - leider nicht wegen seiner Effizienz! Er vergleicht benachbarte Elemente und tauscht sie, wenn sie in der falschen Reihenfolge stehen.

Das größte Element "blubbert" wie eine Luftblase nach oben (daher der Name). Nach dem ersten Durchlauf steht das größte Element am Ende, nach dem zweiten das zweitgrößte usw.

for (int i = array.length - 1; i > 0; i--) {
    for (int j = 0; j < i; j++) {
        if (array[j] > array[j + 1]) {
            // Elemente tauschen
        }
    }
}

Algorithmus-Vergleich: Alle drei haben O(n²) Laufzeit, aber unterschiedliche Stärken. Selection Sort macht die wenigsten Tauschoperationen, Insertion Sort ist am schnellsten bei vorsortieren Daten.

Bubble Sort ist am langsamsten, da er die meisten Tauschoperationen braucht. Er wird hauptsächlich zum Lernen verwendet, nicht in der Praxis. Für echte Projekte gibt es effizientere Algorithmen wie Quicksort oder Mergesort.

Fazit: Wählt Selection Sort für große unsortierte Arrays, Insertion Sort für kleine teilsortierte Arrays!

We thought you’d never ask...

What is the Knowunity AI companion?

Our AI companion is specifically built for the needs of students. Based on the millions of content pieces we have on the platform we can provide truly meaningful and relevant answers to students. But its not only about answers, the companion is even more about guiding students through their daily learning challenges, with personalised study plans, quizzes or content pieces in the chat and 100% personalisation based on the students skills and developments.

Where can I download the Knowunity app?

You can download the app in the Google Play Store and in the Apple App Store.

Is Knowunity really free of charge?

That's right! Enjoy free access to study content, connect with fellow students, and get instant help – all at your fingertips.

Most popular content: Java

2

Most popular content in Informatik

9
InformatikInformatik

Informatik GK Lernzettel Abitur 2025

- selbstständig erstellter Lernzettel

1278317
Q
InformatikInformatik

Quiz für die Komponenten des Pc's💻

💻Hier lernst ind testest du dein wissen über die Pc Komponenten⌨️

65864
InformatikInformatik

Informatik Abitur 2024: Themenübersicht

Umfassende Themenübersicht für das Abitur 2024 im Fach Informatik. Dieser Lernzettel deckt wichtige Konzepte wie Programmierung in Java, Algorithmen, Datenstrukturen, Datenbanken, Cybersecurity und Verschlüsselungsmethoden ab. Ideal für Schüler, die sich auf das erhöhte Anforderungsniveau vorbereiten. Enthält auch Informationen zu relationalen Datenbanken, SQL-Abfragen und kryptologischen Verfahren.

132,84958
C
InformatikInformatik

Computer

Lerne alles über Computer und ihre Funktionsweise mit diesen fesselnden Flashcards. Perfekt für Schüler der 5. Klasse, die Computer Science entdecken möchten.

55360
InformatikInformatik

Informatik Abitur 2024: Datenstrukturen & Datenbanken

Umfassender Lernzettel für das Informatik-Abitur 2024, der sich auf lineare Datenstrukturen, relationale Datenbanken, SQL-Abfragen und Automaten konzentriert. Ideal zur Vorbereitung auf Prüfungen mit Schwerpunkten auf Sortieralgorithmen, Datenbankmodellierung und Java-Programmierung.

112,52447
InformatikInformatik

Informatik Abitur 2025 NRW

Informatik Übersicht zu den Themen die im mündlichen Abitur drankommen. Ist also vielleicht nicht zu 100% vollständig.

124599
InformatikInformatik

WENN und SVERWEIS

Erklärung sverweis und wenn Funktion bei exel

116233
InformatikInformatik

Python Lernzettel Informatik

Python Lernzettel (mathematische Operatoren, Variablen, Datentypen, Skripte, Boolesche Operatoren)

118698
InformatikInformatik

Informatik Grundlagen: Datenstrukturen & Algorithmen

Dieser Lernzettel bietet eine umfassende Übersicht über grundlegende Konzepte der Informatik, einschließlich Objekte und Klassen, lineare und nicht-lineare Datenstrukturen, Sortier- und Suchalgorithmen, Bäume, Struktogramme, relationale Datenbanken, SQL-Abfragen, formale Sprachen und Automaten sowie Netzwerktopologien. Ideal für die Vorbereitung auf das Abitur in NRW.

131,40031

Most popular content

9
DeutschDeutsch

Der zerbrochene Krug

Szenenzusammenfassunfen, Figurenkonstellationen, Aufbau des Stücks, Sprache und Stilbesonderheiten, Aussageabsicht, Thematik, Interpretation

1148,034728
DeutschDeutsch

Der zerbrochene Krug von Heinrich von Kleist

Hier steht so ziemlich alles drinnen von Zusammenfassungen der einzelnen Auftritte bis hin zu den einzelnen Perosn und noch einiges mehr

1254,769921
DeutschDeutsch

Der zerbrochne Krug

Ausführliche Lernzettel zu: Basisdaten, Handlung, ausführliche Zusammenfassungen der Auftritte, zentrale Themen, Symbolische Bedeutung, Merkmale der Komödie

1214,327253
DeutschDeutsch

Heimsuchung_JennyErpenbeck_Abitur

Zusammenfassungen für jedes Kapitel, Analysen und Zitate

1314,076277
MatheMathe

ZP10 Mathe Zusammenfassung NRW

Lernzettel für die ZP10 Mathe in NRW mit allen Themen außer Sinusfunktionen.

1061,9114,842
DeutschDeutsch

Der zerbrochene Krug: Analyse

Diese umfassende Analyse von 'Der zerbrochene Krug' von Heinrich von Kleist bietet eine detaillierte Kapitelzusammenfassung, Charakterisierungen, historische Kontexte, sowie den Aufbau und die sprachlichen Merkmale des Dramas. Ideal für Studierende, die sich auf Prüfungen vorbereiten oder tiefere Einblicke in Kleists Werk gewinnen möchten.

1199,8391,255
EnglischEnglisch

Englisch LK Abitur 2025

Komplette Englisch LK Abi Zusammenfassung 2025

1315,040394
DeutschDeutsch

Schreibkompetenzen Deutsch LK

Diese umfassende Zusammenstellung bereitet auf das Abitur 2024 vor und deckt alle relevanten Schreibkompetenzen ab: von der Analyse pragmatischer Texte über die Erörterung literarischer Werke bis hin zur Interpretation von Epik, Lyrik und Dramatik. Zudem werden Techniken des materialgestützten Schreibens, der Redeanalyse sowie journalistische Textsorten und rhetorische Mittel behandelt. Ideal für eine gezielte und effektive Prüfungsvorbereitung.

138,207165
DeutschDeutsch

Jenny Erpenbeck "Heimsuchung"

Übersicht und Struktur des Romans

117,998168

Can't find what you're looking for? Explore other subjects.

Students love us — and so will you.

4.6/5App Store
4.7/5Google Play

The app is very easy to use and well designed. I have found everything I was looking for so far and have been able to learn a lot from the presentations! I will definitely use the app for a class assignment! And of course it also helps a lot as an inspiration.

Stefan SiOS user

This app is really great. There are so many study notes and help [...]. My problem subject is French, for example, and the app has so many options for help. Thanks to this app, I have improved my French. I would recommend it to anyone.

Samantha KlichAndroid user

Wow, I am really amazed. I just tried the app because I've seen it advertised many times and was absolutely stunned. This app is THE HELP you want for school and above all, it offers so many things, such as workouts and fact sheets, which have been VERY helpful to me personally.

AnnaiOS user