CodeGym
Aktion
CodeGym University
Lernen
Kurs
Aufgaben
Umfragen & Quizze
Spiele
Hilfe
Zeitplan für einen Tritt in den Hintern
Community
Benutzer
Forum
Chat
Artikel
Erfolgsstorys
Aktivität
Rezensionen
Abonnements
Helles Design
Frage
  • Rezensionen
  • Über uns
Start
Jetzt lernen
Jetzt lernen
  • Alle Fragen
hidden #10625598
Level 23
  • 29.06.2020
  • 182Aufrufe
  • 2Kommentare

wie läuft das hier mit der spezifischen Änderung eines gewissen teils im String?

Frage zur Aufgabe Reader-Wrapper 2
Java Core,  Level 9,  Lektion 8
In der Diskussion


Ersetze in der main-Methode das System.out-Objekt durch deinen eigenen Reader-Wrapper, wie du ihn in der Lektion gesehen hast.
Dein Reader-Wrapper muss alle Vorkommen von „te“ durch „??“ ersetzen.
Rufe die vorhandene printSomething()-Methode von testString auf.
Setze die Variable System.out wieder auf den ursprünglichen Datenstrom zurück.
Zeige die geänderte Zeichenkette an.

Anforderungen:
  • Die Solution-Klasse muss eine TestString-Klasse enthalten.
  • Die Solution-Klasse muss ein das Feld public static TestString testString enthalten, das sofort initialisiert wird.
  • Die TestString-Klasse muss die Methode public void printSomething() besitzen.
  • Die printSomething()-Methode der TestString-Klasse muss „This is text for testing“ anzeigen.
  • Die Methode main(String[] args) der Solution-Klasse muss ein PrintStream-Objekt erstellen (verwende den PrintStream-Konstruktor mit einem ByteArrayOutputStream-Parameter).
  • Die main(String[] args)-Methode der Solution-Klasse muss den Konsolenausgabestrom (System.out) ersetzen und dann wiederherstellen.
  • Die main(String[] args)-Methode der Solution-Klasse muss die printSomething()-Methode von testString aufrufen.
  • Die main(String[] args)-Methode der Solution-Klasse muss die von der printSomething()-Methode ausgegebene Zeile gemäß den Aufgabenbedingungen modifizieren und auf der Konsole ausgeben.
package de.codegym.task.task19.task1912; import java.io.*; import java.util.*; import java.util.regex.*; /* Reader-Wrapper 2 */ public class Solution { public static TestString testString = new TestString(); public static void main(String[] args) { PrintStream consoleOut = System.out; ByteArrayOutputStream outStream = new ByteArrayOutputStream(); PrintStream print = new PrintStream(outStream); System.setOut(print); testString.printSomething(); String result = outStream.toString(); System.setOut(consoleOut); String[] parts = result.split("\\s+"); for(String s : parts){ if(s.contains("te")){ s.replaceAll("te", "??"); } } } public static class TestString { public void printSomething() { System.out.println("This is text for testing"); } } }
0
Kommentare (2)
  • Beliebt
  • Neu
  • Alt
Du musst angemeldet sein, um einen Kommentar schreiben zu können
Thomas
Level 32 , Bayreuth, Germany
29 Juni 2020, 16:06
statt Zeilen 24 -30
System.out.println(result.replaceAll("te", "??"));
+2
hidden #10625598
Level 23
29 Juni 2020, 16:18
danke :) ich brauche eine pause, deine antworten sind viel zu einfach
0
Lernen
  • Registrierung
  • Java-Kurs
  • Hilfe zu Aufgaben
  • Preise
  • Spieleprojekte
  • Java Syntax
Community
  • Benutzer
  • Artikel
  • Forum
  • Chat
  • Erfolgsstorys
  • Aktivität
  • Affiliate Program
Unternehmen
  • Über uns
  • Kontakt
  • Rezensionen
  • Medien
  • CodeGym im Bildungsbereich
  • FAQ
  • Support
CodeGym CodeGym ist ein Java-Tutorial zum Lernen von Java von Grund auf. Dieser Kurs ist perfekt dafür geeignet, Java von Beginn an zu meistern. Er enthält über 1200 Aufgaben mit Sofortüberprüfung und grundlegende Theorie zu den Java-Grundlagen. Damit auch du bei deinem Kurs erfolgreich bist, haben wir eine ganze Reihe motivierender Inhalte: Quizfragen, Programmierprojekte, Inhalte zu effizientem Lernen und zum Berufseinstieg als Java-Entwickler.
Folgen
Sprache der Oberfläche
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
MastercardVisa
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
This website uses cookies to provide you with personalized service. By using this website, you agree to our use of cookies. If you require more details, please read our Terms and Policy.