Forum:  Programmiersprachen
Thema: Java: Schleife, Ausgeben
Themen-Übersicht
lilliputz
Aktiv
Dabei seit: 18.11.2011
Mitteilungen: 1318
Aus:
Themenstart: 2012-04-12 23:31

Hallo ihr lieben ;)
Ich gebe in die Kommandozeile irgendwelche Parametern ein (beliebig viele) und will das mir das programm sie mir nebeneinander ausgibt.
JAVA
        public static void main(String[] args) {
        int Anzahl = args.length;
        for (int i = 0;i < ParameterAnzahl;i++){
        System.out.print(args[i]);
        }
        }

So pickt er mir aber die Wörter die ich in der Kommandozeile eingebe hintereinander und macht keinen Abstand. Ich will zwischen den Wörtern einen Leertastenabstand, also printl auch nicht, da so eine ganze Zeile abstand ist.
Wie kann ich das machen?


Otis
Senior
Dabei seit: 06.10.2007
Mitteilungen: 899
Aus: Stralsund
Beitrag No.1, eingetragen 2012-04-12 23:40

Hi,

ohne eine neue Funktion zu benutzen:
Java
System.out.print(args[i]);
System.out.print(" ");

mfg Otis

PS: gibt noch andere Wege (z.B. printf)


lilliputz
Aktiv
Dabei seit: 18.11.2011
Mitteilungen: 1318
Aus:
Beitrag No.2, vom Themenstarter, eingetragen 2012-04-12 23:47

hallo

Vielen dank,
Wenn ich danach (nach der Schleife) noch etwas ausgeben will, dann packt es dass auch gleich dahinter. mit System.out.print(" "); ist dann da nur eine Leerstelle. Da will ich aber einen zeilen umbruch.
Java
        public static void main(String[] args) {
        int Anzahl = args.length;
        for (int i = 0;i < ParameterAnzahl;i++){
        System.out.print(args[i]);
        System.out.print(" ");
        }
        System.out.print("Hallo");
}

Also zwischen kommandozeile und hallo, will ich einen zeilenabstand.

Lg

[ Nachricht wurde editiert von lilliputz am 12.04.2012 23:48:54 ]


Otis
Senior
Dabei seit: 06.10.2007
Mitteilungen: 899
Aus: Stralsund
Beitrag No.3, eingetragen 2012-04-12 23:50

Hi,

na denk doch mal nach... du sagst es doch schon
"Nach der Ausgabe der Kommandos" -> nach der for-Schleife
"Zeilenumbruch ausgeben" -> println()

mfg Otis

[ Nachricht wurde editiert von Otis am 12.04.2012 23:51:14 ]


chryso
Senior
Dabei seit: 07.02.2009
Mitteilungen: 9552
Aus: Österreich
Beitrag No.4, eingetragen 2012-04-12 23:53

Hat System.out.println(" "); nicht einen Zeilenumbruch zur Folge?



[Die Antwort wurde nach Beitrag No.2 begonnen.]


lilliputz
Aktiv
Dabei seit: 18.11.2011
Mitteilungen: 1318
Aus:
Beitrag No.5, vom Themenstarter, eingetragen 2012-04-12 23:55

ah ^^

Danke
LG


Otis
Senior
Dabei seit: 06.10.2007
Mitteilungen: 899
Aus: Stralsund
Beitrag No.6, eingetragen 2012-04-13 00:05

2012-04-12 23:53 - chryso in Beitrag No. 4 schreibt:
Hat System.out.println(" "); nicht einen Zeilenumbruch zur Folge?

funktioniert auch ohne parameter.


chryso
Senior
Dabei seit: 07.02.2009
Mitteilungen: 9552
Aus: Österreich
Beitrag No.7, eingetragen 2012-04-13 01:23

2012-04-13 00:05 - Otis in Beitrag No. 6 schreibt:
2012-04-12 23:53 - chryso in Beitrag No. 4 schreibt:
Hat System.out.println(" "); nicht einen Zeilenumbruch zur Folge?

funktioniert auch ohne parameter.

Ich kann ja nicht Java.  wink Aber ich dachte, meine Schreibweise wird wohl funktionieren.
Habe mir gestern zum ersten Mal einen Java-Code angeschaut, um lilliputz auf gedankliche Fehler aufmerksam zu machen.

LG chryso


Twaddler
Neu
Dabei seit: 13.04.2012
Mitteilungen: 1
Aus:
Beitrag No.8, eingetragen 2012-04-13 16:45

Wenn du "Platz sparen" willst, dann können Escape-Sequenzen auch ganz sinnvoll sein.
Java
System.out.println("\nHallo");

Durch das "\n" (new line) hast du einen Zeilensprung vor dem "Hallo". Dem "Hallo" folgt übrigens auch eine neue Zeile. Siehe: println()

Hier nochmal der Quelltext (mit einer Foreach-Schleife):
Java
public class Test {
	public static void main(String[] args) {
		for(String s : args) {
			System.out.print(s);
			System.out.print(" ");
		}
		System.out.println("\nHier kommt der restliche Text");
	}
}

Viele Grüße
Twaddler







Dieses Forumbeitrag kommt von Matroids Matheplanet
http://matheplanet.com

Die URL für dieses Forum-Thema ist:
http://matheplanet.com/default3.html?topic=167203=5101
Druckdatum: 2013-05-22 11:20