{"id":98,"date":"2023-12-12T00:21:36","date_gmt":"2023-12-11T23:21:36","guid":{"rendered":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/?p=98"},"modified":"2024-01-08T09:13:14","modified_gmt":"2024-01-08T08:13:14","slug":"die-nutzung-der-standard-input-und-standard-output-streams-in-java","status":"publish","type":"post","link":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/?p=98","title":{"rendered":"Die Nutzung der Standard-Input- und Standard-Output-Streams in Java"},"content":{"rendered":"\n<p>Die Standard-Input- und Standard-Output-Streams sind grundlegende Konzepte in der Programmierung, die es erm\u00f6glichen, Daten zwischen einem Programm und der Konsole zu lesen und zu schreiben. In Java werden diese Streams durch die Klassen <code>System.in<\/code> und <code>System.out<\/code> bereitgestellt. Dieser Artikel wird erkl\u00e4ren, wie Sie diese Streams in Java verwenden k\u00f6nnen, um Benutzereingaben zu lesen und Ergebnisse auf die Konsole auszugeben.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Die Standard-Input-Streams (<code>System.in<\/code>)<\/h2>\n\n\n\n<p>Der Standard-Input-Stream (<code>System.in<\/code>) ist ein InputStream-Objekt, das von Java bereitgestellt wird und standardm\u00e4\u00dfig mit der Tastatur verbunden ist. Dies bedeutet, dass Sie damit Benutzereingaben von der Konsole lesen k\u00f6nnen. Um den Standard-Input-Stream zu verwenden, m\u00fcssen Sie ihn in einen geeigneten Datenstrom umwandeln, um die Eingaben zu verarbeiten.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">InputStreamReader und BufferedReader<\/h3>\n\n\n\n<p>Um den Standard-Input-Stream effektiv zu verwenden, k\u00f6nnen Sie ihn in einen InputStreamReader und dann in einen BufferedReader umwandeln. Der InputStreamReader konvertiert die Byte-Daten aus <code>System.in<\/code> in Zeichendaten, und der BufferedReader bietet effiziente Methoden zum Lesen von Zeichenketten aus dem InputStreamReader.<\/p>\n\n\n\n<p>Hier ist ein einfaches Beispiel, wie Sie den Standard-Input-Stream verwenden k\u00f6nnen, um eine Zeichenkette von der Konsole einzulesen:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-keyword\">import<\/span> java.io.BufferedReader;\n<span class=\"hljs-keyword\">import<\/span> java.io.IOException;\n<span class=\"hljs-keyword\">import<\/span> java.io.InputStreamReader;\n\npublic <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">ReadFromConsole<\/span> <\/span>{\n    public <span class=\"hljs-keyword\">static<\/span> <span class=\"hljs-keyword\">void<\/span> main(<span class=\"hljs-built_in\">String<\/span>&#91;] args) {\n        BufferedReader reader = <span class=\"hljs-keyword\">new<\/span> BufferedReader(<span class=\"hljs-keyword\">new<\/span> InputStreamReader(System.in));\n        <span class=\"hljs-keyword\">try<\/span> {\n            System.out.print(<span class=\"hljs-string\">\"Geben Sie eine Zeichenkette ein: \"<\/span>);\n            <span class=\"hljs-built_in\">String<\/span> input = reader.readLine();\n            System.out.println(<span class=\"hljs-string\">\"Sie haben eingegeben: \"<\/span> + input);\n        } <span class=\"hljs-keyword\">catch<\/span> (IOException e) {\n            e.printStackTrace();\n        }\n    }\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In diesem Beispiel wird zuerst ein <code>BufferedReader<\/code> erstellt, der den Standard-Input-Stream (<code>System.in<\/code>) verwendet. Dann wird <code>reader.readLine()<\/code> aufgerufen, um eine Zeichenkette von der Konsole einzulesen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Scanner-Klasse<\/h3>\n\n\n\n<p>Eine andere M\u00f6glichkeit, den Standard-Input-Stream zu verwenden, besteht darin, die Scanner-Klasse zu verwenden. Die Scanner-Klasse bietet einfache Methoden zum Lesen von verschiedenen Datentypen von der Konsole.<\/p>\n\n\n\n<p>Hier ist ein Beispiel, wie Sie die Scanner-Klasse verwenden k\u00f6nnen, um eine Ganzzahl von der Konsole einzulesen:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-keyword\">import<\/span> java.util.Scanner;\n\npublic <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">ReadIntFromConsole<\/span> <\/span>{\n    public <span class=\"hljs-keyword\">static<\/span> <span class=\"hljs-keyword\">void<\/span> main(<span class=\"hljs-built_in\">String<\/span>&#91;] args) {\n        Scanner scanner = <span class=\"hljs-keyword\">new<\/span> Scanner(System.in);\n        System.out.print(<span class=\"hljs-string\">\"Geben Sie eine Ganzzahl ein: \"<\/span>);\n        int number = scanner.nextInt();\n        System.out.println(<span class=\"hljs-string\">\"Sie haben die Zahl eingegeben: \"<\/span> + number);\n        scanner.close();\n    }\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Die Scanner-Klasse bietet Methoden wie <code>nextInt()<\/code>, <code>nextDouble()<\/code>, <code>nextLine()<\/code> usw., um verschiedene Datentypen von der Konsole einzulesen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Die Standard-Output-Streams (<code>System.out<\/code>)<\/h2>\n\n\n\n<p>Der Standard-Output-Stream (<code>System.out<\/code>) ist ein PrintStream-Objekt, das von Java bereitgestellt wird und standardm\u00e4\u00dfig mit der Konsole verbunden ist. Sie k\u00f6nnen diesen Stream verwenden, um Daten auf die Konsole auszugeben.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Die println() Methode<\/h3>\n\n\n\n<p>Die einfachste Methode, Daten auf die Konsole auszugeben, ist die <code>println()<\/code> Methode des <code>System.out<\/code> Objekts. Diese Methode nimmt eine Zeichenkette als Argument und gibt sie auf die Konsole aus, gefolgt von einem Zeilenumbruch.<\/p>\n\n\n\n<p>Hier ist ein Beispiel:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">public <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">PrintToConsole<\/span> <\/span>{\n    public <span class=\"hljs-keyword\">static<\/span> <span class=\"hljs-keyword\">void<\/span> main(<span class=\"hljs-built_in\">String<\/span>&#91;] args) {\n        System.out.println(<span class=\"hljs-string\">\"Hallo, Welt!\"<\/span>);\n    }\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Dieses Programm gibt die Zeichenkette &#8222;Hallo, Welt!&#8220; gefolgt von einem Zeilenumbruch auf die Konsole aus.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Die print() Methode<\/h3>\n\n\n\n<p>Die <code>print()<\/code> Methode des <code>System.out<\/code> Objekts funktioniert \u00e4hnlich wie <code>println()<\/code>, gibt jedoch keine Zeilenumbr\u00fcche aus. Sie k\u00f6nnen diese Methode verwenden, wenn Sie Text auf der gleichen Zeile ausgeben m\u00f6chten.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">PrintWithoutNewLine<\/span> <\/span>{\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">static<\/span> void main(String&#91;] args) {\n        System.out.<span class=\"hljs-keyword\">print<\/span>(<span class=\"hljs-string\">\"Dies ist eine \"<\/span>);\n        System.out.<span class=\"hljs-keyword\">print<\/span>(<span class=\"hljs-string\">\"Zeichenkette ohne Zeilenumbruch.\"<\/span>);\n    }\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In diesem Beispiel werden die beiden <code>print()<\/code> Aufrufe auf der gleichen Zeile ausgegeben, da kein Zeilenumbruch zwischen ihnen erfolgt.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Formatierte Ausgabe<\/h3>\n\n\n\n<p>Sie k\u00f6nnen auch die <code>printf()<\/code> Methode des <code>System.out<\/code> Objekts verwenden, um formatierte Ausgaben auf die Konsole zu schreiben. Diese Methode \u00e4hnelt der <code>printf()<\/code> Funktion in C und erm\u00f6glicht es Ihnen, Zeichenketten mit Platzhaltern zu erstellen.<\/p>\n\n\n\n<p>Hier ist ein Beispiel:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">public <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">FormattedOutput<\/span> <\/span>{\n    public <span class=\"hljs-keyword\">static<\/span> <span class=\"hljs-keyword\">void<\/span> main(<span class=\"hljs-built_in\">String<\/span>&#91;] args) {\n        <span class=\"hljs-built_in\">String<\/span> name = <span class=\"hljs-string\">\"John\"<\/span>;\n        int age = <span class=\"hljs-number\">30<\/span>;\n        System.out.printf(<span class=\"hljs-string\">\"Name: %s, Alter: %d%n\"<\/span>, name, age);\n    }\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In diesem Beispiel werden die Platzhalter <code>%s<\/code> und <code>%d<\/code> durch die Werte von <code>name<\/code> und <code>age<\/code> ersetzt, und <code>%n<\/code> wird f\u00fcr den Zeilenumbruch verwendet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fehlerausgabe (<code>System.err<\/code>)<\/h2>\n\n\n\n<p>Zus\u00e4tzlich zu <code>System.out<\/code> und <code>System.in<\/code> gibt es auch <code>System.err<\/code>, einen Standard-Error-Stream. Dieser Stream ist standardm\u00e4\u00dfig ebenfalls mit der Konsole verbunden, wird jedoch in der Regel f\u00fcr die Ausgabe von Fehlermeldungen und Ausnahmen verwendet.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">public <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">ErrorOutput<\/span> <\/span>{\n    public <span class=\"hljs-keyword\">static<\/span> <span class=\"hljs-keyword\">void<\/span> main(<span class=\"hljs-built_in\">String<\/span>&#91;] args) {\n        System.err.println(<span class=\"hljs-string\">\"Dies ist eine Fehlermeldung.\"<\/span>);\n    }\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Zusammenfassung<\/h2>\n\n\n\n<p>Die Nutzung der Standard-Input- und Standard-Output-Streams in Java ist ein grundlegendes Konzept, das es erm\u00f6glicht, Daten zwischen einem Programm und der Konsole zu lesen und zu schreiben. Der Standard-Input-Stream (<code>System.in<\/code>) kann mithilfe von <code>BufferedReader<\/code> oder der Scanner-Klasse verwendet werden, um Benutzereingaben von der Konsole zu lesen. Der Standard-Output-Stream (<code>System.out<\/code>) bietet einfache Methoden wie <code>println()<\/code> und <code>printf()<\/code> zum Schreiben von Daten auf die Konsole.<\/p>\n\n\n\n<p>Das Verst\u00e4ndnis dieser Streams ist entscheidend f\u00fcr die Entwicklung interaktiver Java-Anwendungen, bei denen Benutzereingaben verarbeitet und Ergebnisse auf die Konsole ausgegeben werden m\u00fcssen. Mit diesem Wissen sind Sie in der Lage, effektiv mit der Konsole zu interagieren und n\u00fctzliche Java-Anwendungen zu erstellen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Standard-Input- und Standard-Output-Streams sind grundlegende Konzepte in der Programmierung, die es erm\u00f6glichen, Daten zwischen einem Programm und der Konsole zu lesen und zu schreiben. In Java werden diese Streams durch die Klassen System.in und System.out bereitgestellt. Dieser Artikel wird erkl\u00e4ren, wie Sie diese Streams in Java verwenden k\u00f6nnen, um Benutzereingaben zu lesen und Ergebnisse [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-98","post","type-post","status-publish","format-standard","hentry","category-plain_java"],"_links":{"self":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts\/98","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=98"}],"version-history":[{"count":1,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts\/98\/revisions"}],"predecessor-version":[{"id":99,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts\/98\/revisions\/99"}],"wp:attachment":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=98"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=98"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=98"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}