% in der Standartausgabe wo es nicht hin soll

F

FranziM123

Gast
Erst mal ein Hallo und vielen Dank im voraus an alle Beteiligten.

Ich möchte die ArrayList gerade, die mit int werten gefüllt ist ohne die Zeichen [ ] , in einer Zeile ausgeben.
Das funktioniert auch aber am ende der zeile steht dann ein Prozentzeichen auf der Standartausgabe, dass ich nicht möchte

Java:
   if (str1.equals(str2)) {
      for (int k=0; k<gerade.size(); k++) {
         System.out.print(gerade.get(k)+" ");
      }
   }

Hab lange gesucht und komm nicht so recht weiter (ein % Zeichen wird in der google Suche anscheinend nicht mal interpretiert nicht ma so "%")

Am liebsten wärs mir, wenn jemand mein Fehler bezeichnen könnte. Ich wär mit einer Alternative aber auch sehr glücklich.
 
Zuletzt bearbeitet von einem Moderator:
S

SlaterB

Gast
Prozentzeichen kommen nicht von selber, über ein Programm muss man schon Kontrolle habe,
starte mit einem Hello-Word-Programm, gibt das nur Hello World aus und kein %? gut

danach arbeite Schritt für Schritt dein Programm ein kopiere Klassen, Methoden, einzelne Aufrufe,
schaue im ganzen Programm nach System.out.x-Aufrufen, irgendwo musst du es stehen haben, von selber passiert das nicht

poste evtl. das ganze Programm
 

L-ectron-X

Gesperrter Benutzer
Also dein Code ist so weit in Ordnung. Das %-Zeichen kommt irgendwie in deine Liste hinein und wird als String ausgegeben.
Um zu ermitteln, wie das Zeichen in deine Liste kommt, musst du deinen Code vom Füllen der Liste mal durchgehen.
 
F

FranziM123

Gast
Danke für die rasche Antwort
Hier ist nun das ganze Programm:
[Java]

String str1 = new String(argv[2]);
String str2 = new String("vorderseite");
String str3 = new String("rueckseite");

//Array Liste anlegen
ArrayList gerade = new ArrayList();
ArrayList ungerade = new ArrayList();

//vorderseite
for (int i = 0; i <= (seitenzahl); i=i+(2*subseiten)){
for (int j = 1; j<=subseiten; j++){
if (i+j <= seitenzahl) {
gerade.add(i+j);
}
}
}

//rückseite
for (int i = subseiten; i <= (seitenzahl); i=i+(2*subseiten)){
for (int j = 1; j<=subseiten; j++){
if (i+j <= seitenzahl) {
ungerade.add(i+j);
}
}
}

//ausgeben.

if (str1.equals(str2)) {
for (int k=0; k<gerade.size(); k++) {
System.out.print(gerade.get(k)+" ");
}
}


}
}
[/Java]

Das Programm soll Seitenzahlen Ausgeben die ich dann ducken möchte und Zwar will ich beidseitig drucken und mehrere Seiten pro Blatt. Man kann Angeben wie viele Seiten es ursprünglich gab und wie viele Seiten auf einer Seite später gedruckt werden und ob es später die Vorderseite ist oder die Rückseite.
Interessant ist auch, dass wenn ich anstatt print println nehme und zeilenweise die Elemente der ArrayList ausgebe ist da kein prozentzeichen.

lg Franzi
 
S

SlaterB

Gast
ein vollständiges Programm ist das nicht, Variablen wie seitenzahl fehlen,
von Programmparametern wie argv[2] sollte das testweise besser auch nicht abhängen
falls andere das überprüfen können sollen, gib Dummy-Werte im Programm vor,

deine letzte Bemerkung zu println() läßt aber stark rätseln, vielleicht wirklich irgendwas bei dir kaputt,

schön wäre zur Abklärung aller normalen Ursachen ein komplettes Programm mit Klasse(n), main-Methode und einfach allem, so kurz wie möglich


----

nebenbei:
> String str1 = new String(argv[2]);
> String str2 = new String("vorderseite");

->

String str1 = argv[2];
String str2 = "vorderseite";

niemals irgendwo new String() schreiben!
 
F

FranziM123

Gast
Oh sorry war leider nur ein fragment des codes (copy-paste fehler)

hier der ganze Code:

[Java]


import java.util.ArrayList;

public class seitenreihe{

public static void main(String argv[]) {


int seitenzahl = Integer.parseInt(argv[0]);
int subseiten = Integer.parseInt(argv[1]);

String str1 = new String(argv[2]);
String str2 = new String("vorderseite");
String str3 = new String("rueckseite");

//Array Liste anlegen
ArrayList gerade = new ArrayList();
ArrayList ungerade = new ArrayList();

//vorderseite
for (int i = 0; i <= (seitenzahl); i=i+(2*subseiten)){
for (int j = 1; j<=subseiten; j++){
if (i+j <= seitenzahl) {
gerade.add(i+j);
}
}
}

//rückseite
for (int i = subseiten; i <= (seitenzahl); i=i+(2*subseiten)){
for (int j = 1; j<=subseiten; j++){
if (i+j <= seitenzahl) {
ungerade.add(i+j);
}
}
}

//ausgeben.
// if (str1.equals(str2)) System.out.println(gerade);
// if (str1.equals(str3)) System.out.println(ungerade);

//System.out.println(gerade.size());
//System.out.println(gerade.get(1));

if (str1.equals(str2)) {
for (int k=0; k<gerade.size(); k++) {
System.out.print(gerade.get(k)+" ");
}
}


}
}

[/Java]
 
S

SlaterB

Gast
ok, also am Code ist nichts derartiges,
ich kann noch nach einen Screenshot fragen aber habe eigentlich keine Idee wo das herkommen kann

----

ganz tief aus der Wunderkiste:
vielleicht hilft es ohne Kenntnis der Ursache,
wenn du im Programm längere Strings mit + zusammenbaust und dann doch nur println() verwendest
statt alles einzeln auszugeben
 
F

FranziM123

Gast
Ok hier das Egebnis eines Tests dass ich gemacht hab:

Programmaufruf: java seitenreihe 100 4 vorderseite
Ausgabe: 1 2 3 4 9 10 11 12 17 18 19 20 25 26 27 28 33 34 35 36 41 42 43 44 49 50 51 52 57 58 59 60 65 66 67 68 73 74 75 76 81 82 83 84 89 90 91 92 97 98 99 100 %
 
S

SlaterB

Gast
schaue auch immer nach weiteren Postings von mir zwischendurch, geht ja schnell hin und her hier, ich editiere auch teilweise
verwendest du eigentlich BlueJ oder sonst was komisches?

dein Programm hat überhaupt kein println() bisher, vielleicht geht das % weg, woher es auch immer kommt,
wenn du wenigstens einmal per
System.out.println();
am Ende einen Zeilenumbruch einbaust
 
F

FranziM123

Gast
Also ich hab auch probiert in das println statement die Schleife reinzubasteln. Hat aber nicht geklappt. Da ich vom vielen rumprobieren schon etwas entnervt binn stell ich jetzt einfach ma die dreiste Frage wie du dir des genau vorgestellt hast das mit + und println zusammenzuwursteln.

lg Franzi
 
F

FranziM123

Gast
hm könnte helfen aber das nützt mir dann nichts. Ich möchte die Ausgabe nämlich direkt per Pipe einem anderen Unix Programm übergeben
 
F

FranziM123

Gast
Ich benutze Vim und die Komandozeile (genauer gesagt zsh) und hab nen Linux Host. Ich benutz die neuste Java Version von Sun.
 

Andi_CH

Top Contributor
Warnungen sind doch für irgend etwas da - also bitte nicht ignorieren und

Java:
	ArrayList<Integer> gerade = new ArrayList<Integer>();
	ArrayList<Integer> ungerade = new ArrayList<Integer>();

schreiben.

Was für Daten "futterst" du denn deinem Programm - glaub es einfach, es kann nicht am Prgramm liegen wenn da ein % oder was auch immer rauskommt.
 
S

SlaterB

Gast
print("a");
print("b");

==

String x = "";
x +="a";
x +="b";
print(x);

wenn du aber das ganze Programm ohne println() haben willst, dann bleibt das % vielleicht,

---

zum Testen nebenher:
du könntest dein Programm komplett zerstören und einfach nur
print(1+" ");
print(2+" ");
oder noch weniger schreiben, kommt da auch %?,
bei wieviel Zahlen, bei wievielen nicht?
 
F

FranziM123

Gast
OK
zwei mal Danke
einmal an SlaterB das Dummy Programm mit 2 mal print gibt bei mir auch das % Zeichen aus
und einmal an Andy_Ch die Fehlermeldung hab ich jetzt auch weg bekommen

Ich denk ich muss mir da nen Workaround einfallen lassen, wenn nicht noch einer nen Geistesblitz hat. Binn für alle Vorschläge dankbar.
 

Antoras

Top Contributor
Das % kommt von zsh und deutet auf einen fehlenden line-separator in der Ausgabe hin (\n). Füge am Ende deines Programms noch ein
Code:
System.out.println();
ein und gut ist.
 
F

FranziM123

Gast
Danke für den Hinweis

Konnte es inzwischen auch selbst einkreisen.
Ich hab einfach ma den Output in ne Datei gelegt:

[Java]
File outputFile = new File("vorderseite.txt");
FileWriter out = new FileWriter(outputFile);

if (str1.equals(str2)) {
for (int k=0; k<gerade.size(); k++) {
out.write(gerade.get(k)+" ");
}
}
out.close();
[/Java]

und da ist auch kein %

Danke an Alle
 
F

FranziM123

Gast
Und noch ein Nachtrag

Es gibt auch keine überflüssige Leerzeile wenn man einfach noch println hinzufügt, vor der ich angst hatte.

Freut mich das Jetzt alles zu meiner Zufriedenstellung geklärt ist und ich so einiges dabei gelernt hab.

Da das Alles so super keklappt hat werd ich mich bestimmt bald hier anmelden (spätestens beim nächsten Java Problem und die werden kommen denn ich hab bald ein Programierpraktikum)

lg Franzi
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Variablen-Werte ändern sich nicht... wieso?? Java Basics - Anfänger-Themen 4
S Fehlermeldung: Hauptklasse nicht gefunden Java Basics - Anfänger-Themen 3
M HelloWorld.txt nach HelloWorld.java in Win11 funktioniert nicht Java Basics - Anfänger-Themen 4
Sniper1000 Java lässt sich auf älterem Win 7 nicht mehr installieren Java Basics - Anfänger-Themen 34
W Sieht jemand was, was ich nicht sehe...? (Debugging) Java Basics - Anfänger-Themen 10
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 1
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 3
C my_table.setRowSelectionAllowed(true) funktioniert nicht; Java Basics - Anfänger-Themen 0
B Warum funktioniert die Lösung von CodeGym aber meine nicht? Java Basics - Anfänger-Themen 3
P Wo NUR (!) JRE v18 oder v21 herunterladen? Also nicht volles JDK Java Basics - Anfänger-Themen 1
J shuffle cards wird nicht ausgeführt. Java Basics - Anfänger-Themen 2
J JTextField -> CaretPos bei SelectionStart() setzten nicht bei SelectionEnd() Java Basics - Anfänger-Themen 20
W Java-PRogramm liest als EXE-File Nicht USB, jedoch aus NetBeans Java Basics - Anfänger-Themen 45
I Webservice funktioniert nicht Java Basics - Anfänger-Themen 5
C Abbruch einer Schleife mit break, meine Übung funktioniert nicht richtig Java Basics - Anfänger-Themen 4
SarahXyy Ergebnisse stimmen nicht überein? Java Basics - Anfänger-Themen 11
thomas55 Erste Schritte Modul läuft in IntelliJ, nicht in NetBeans Java Basics - Anfänger-Themen 11
G Nicht ausführbares JAR, externe jars mit einbinden Java Basics - Anfänger-Themen 7
S Erstes Programm: Hallo Welt funktioniert nicht. Java Basics - Anfänger-Themen 3
O Obfuscateter Code lässt sich nicht ausführen? Java Basics - Anfänger-Themen 7
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
G Regex greift nicht richtig Java Basics - Anfänger-Themen 4
G JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
G JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
G JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
J Datenüberwachung funktioniert nicht Java Basics - Anfänger-Themen 9
S Wie debugge ich dies am besten: SingleThreadExecutor führt Task nicht aus..? Java Basics - Anfänger-Themen 29
H JDK installieren jdk-21 wird nicht erkannt Java Basics - Anfänger-Themen 13
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
mo13 JTextField funktioniert nicht Java Basics - Anfänger-Themen 4
G .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
M Methode zielnah zeigt das gewünschte Ausgabe nicht an Java Basics - Anfänger-Themen 3
K Verstehe Rekursion nicht ganz Java Basics - Anfänger-Themen 7
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6
K TicTacToe belegtes feld nicht neu besetzbar Java Basics - Anfänger-Themen 1
K TicTacToe belegtes Feld nicht neu besetzbar Java Basics - Anfänger-Themen 3
A Warum wird mein jdk nicht gefunden? Java Basics - Anfänger-Themen 3
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
K Programm compilierbar aber nicht ausführbar... Java Basics - Anfänger-Themen 21
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
G Mit jPackage erstellte EXE funktioniert nicht Java Basics - Anfänger-Themen 2
N BMI Rechner Was haltet ihr von dem Code habt ihr Verbesserungsvorschläge weil design teschnisch ist das nicht das geilste würde das gerne überarbeiten Java Basics - Anfänger-Themen 12
G Robot funktioniert nicht bei SelectionListener Java Basics - Anfänger-Themen 6
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
J jar Befehl wird nicht erkannt Java Basics - Anfänger-Themen 7
missy72 Erste Schritte (nicht) Deterministischer endlicher Automat Java Basics - Anfänger-Themen 9
T Getter/Setter - wie sieht ein Setter aus? Und wie nicht? Java Basics - Anfänger-Themen 34
T catch(InputMismatchException) wird nicht ausgefürt/erkannt Java Basics - Anfänger-Themen 12
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
P Netbeans installation geht nicht Java Basics - Anfänger-Themen 26
R RegEx funktioniert nicht Java Basics - Anfänger-Themen 14
T HashMap Lsite gibt die sachen nicht aus wie gewollt. Java Basics - Anfänger-Themen 3
H Counter durch gepresste Taste nur auf 1 erhöhen und nicht durchzählen lassen Java Basics - Anfänger-Themen 7
S 2 Reihen ratio-btn, eine Reihe funktioniert andere nicht Java Basics - Anfänger-Themen 4
T scanner nicht erkannt Java Basics - Anfänger-Themen 3
monsterherz Punkt Notation funktioniert nicht Java Basics - Anfänger-Themen 4
monsterherz Fehler Semikolon fehlt - ich weiss aber nicht wo da noch eines hin sollte... Java Basics - Anfänger-Themen 21
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
monsterherz einfache Methode mit Fehler den ich nicht finde Java Basics - Anfänger-Themen 21
monsterherz if / else if mit Fehler den ich leider nicht finde Java Basics - Anfänger-Themen 11
D Jar Datei startet unter Linux nicht Java Basics - Anfänger-Themen 3
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
M Konstruktor-Aufruf im Konstruktor, aber nicht am Anfang? Java Basics - Anfänger-Themen 4
G Variable aktualisiert sich nicht in rekursiver Methode Java Basics - Anfänger-Themen 4
Darkherobrine9 Import klappt nicht Java Basics - Anfänger-Themen 7
N Programm Funktioniert mit .txt Datei aber nicht mit .rtf Datei Java Basics - Anfänger-Themen 2
R Compiler-Fehler Variable wird nicht gefunden bzw. erkannt? Java Basics - Anfänger-Themen 2
_so_far_away_ Inventarisierungssystem brauche switch Cases und weiß nicht, wie ich e implementieren muss Java Basics - Anfänger-Themen 5
P BeforeEach AfterEach werden nicht ausgeführt. Java / Selenium Java Basics - Anfänger-Themen 4
I Erste Schritte Einfache Datenbank-Webseite erstellen als Nicht-IT-lerin Java Basics - Anfänger-Themen 24
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
D Quellcode für cmd funktioniert nicht Java Basics - Anfänger-Themen 9
C Kann mir jemand sagen warum ich nicht mal rechnen kann ? Java Basics - Anfänger-Themen 32
K Java Lotto Spiel; ich komme nicht weiter Java Basics - Anfänger-Themen 15
A JavaFX-Anwendung läuft nicht mit Selenium WebDriver Java Basics - Anfänger-Themen 0
T Meine Klasse wird nicht gefunden Java Basics - Anfänger-Themen 1
T Wie kann man es machen das ein Objekt nicht übermalt wird Java Basics - Anfänger-Themen 2
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
heinrich172 Methoden Trotz gleichem Element stimmt Vergleich nicht? Java Basics - Anfänger-Themen 7
I Entity Objekt nicht gefunden -> Webhook empfangen in der gleichen Methode (Transaktion) Java Basics - Anfänger-Themen 37
K warum kann ich das Objekt nicht erstellen ? Java Basics - Anfänger-Themen 2
MiMa Ungültiges Datum wird nicht erkannt ?? Java Basics - Anfänger-Themen 6
J Meine Mails gehen nicht raus Java Basics - Anfänger-Themen 8
Zrebna Kann Java Programm nicht in Konsole ausführen Java Basics - Anfänger-Themen 1
S Ist JDK jetzt free oder nicht? Java Basics - Anfänger-Themen 5
K Warum läuft das Programm nicht(bzw. nicht richtig) Java Basics - Anfänger-Themen 4
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
M Methoden Methode 'wiederhole' nicht gefunden (Uebersetzungsfehler) Java Basics - Anfänger-Themen 1
D Eclipse will nicht auslesen Java Basics - Anfänger-Themen 6
Temsky34 Array IndexOf nicht verfügbar Java Basics - Anfänger-Themen 18
TeacherMrSSimon Schachspiel, Werte in Figur eintragen klappt nicht Java Basics - Anfänger-Themen 23

Ähnliche Java Themen

Neue Themen


Oben