java Wiederholungszeichen

8

Ich bin ein Java-Anfänger, bitte behaltet das im Hinterkopf. Ich muss ein Programm erstellen, das eine Zahl liest und dann die Menge an Ausrufezeichen "!" Anzeigt.

Das habe ich:

%Vor%

Danke

    
Yacoby 21.02.2010, 14:51
quelle

4 Antworten

21

Wenn Sie tatsächlich die Anforderung haben, eine Zeichenfolge zu erstellen, die X Ausrufezeichen enthält, können Sie dies ohne wiederholte Verkettung tun:

%Vor%     
Paul Clapham 21.02.2010 19:18
quelle
4

Ihr Programm funktioniert nicht, da String.concat () die Zeichenfolge nicht ändert, aber eine neue Zeichenfolge zurückgibt. Zum Beispiel ist "a" .concat ("b") "ab". Also sollten Sie output = output.concat("!") anstelle von output.concat("!") schreiben.

Dies wird jedoch sehr ineffizient sein, da der Aufbau einer Kette von n Ausrufezeichen O (n ^ 2) Zeit benötigt (siehe "große Oh Notation" auf Google oder Wikipedia, siehe auch Schlemiel der Maler-Algorithmus ).

Sehen Sie sich die Dokumentation zur Klasse StringBuilder an und verwenden Sie sie. Es wurde entwickelt, um Strings aus Teilen aufzubauen.

    
jkff 21.02.2010 14:58
quelle
3

Es sieht so aus, als ob Sie sehr nah sind, Tom.

Erstens ist der normale Weg, ein String in Java aufzubauen, mit der Klasse StringBuilder , wie folgt:

%Vor%

Dann müssen Sie im Bereich der Methode output eine Variable mit dem Namen start() deklarieren und dieser Variablen das Ergebnis der Methode printUitroeptekens() zuweisen:

%Vor%     
erickson 21.02.2010 15:01
quelle
3

Ihr Programm sollte diese Struktur haben:

%Vor%

Es gibt nichts in der Anweisung, das erfordert, dass Sie tatsächlich einen String erstellen, soweit ich das beurteilen kann.

    
anon 21.02.2010 15:04
quelle

Tags und Links