www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Softwaretechnik und Programmierung" - Java Frage
Java Frage < Softwaretechnik+Pro < Praktische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Softwaretechnik und Programmierung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Java Frage: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 18:46 Sa 02.05.2009
Autor: mrfivejunior

Aufgabe
c)Löschen Sie sämtliche Leerzeichen in der korrigierten Zeichenkette ("Das ist ein vollkommen falscher Teststring"), stellen Sie aber sicher,
dass jeder Buchstabe hinter dem gelöschten Leerzeichen ein Großbuchstabe ist (Ergebnis:
"DasIstEinVollkommenFalscherTeststring").


Hallo zusammen,

ich hab zur dieser Aufgabe folgenden Code geschrieben:

1: public static String loeschen(String x)
2:  {
3:  StringBuffer ergebnis = new StringBuffer();
4:  ergebnis.append(x);
5:  Character.toUpperCase(ergebnis.charAt(0));
6:  int laenge=ergebnis.length();
7:  for(int a=0; a<laenge; a++)
8:  {
9:  if(ergebnis.charAt(a)==' ')
10:  {
11:  Character.toUpperCase(ergebnis.charAt(a+1));
12:  ergebnis.deleteCharAt(a);
13:  laenge--;
14:  }
15:  }
16:  return ergebnis.toString();
17:  }


Jedoch funktioniert bei mir irgendwie die toUpper-Funktion nicht. Warum??

Bzw. was muss ich ändern, um dass die die Funktion genau so funktioniert wie sie in der Aufgabe gewünscht ist.

Gruß Tobias

        
Bezug
Java Frage: Antwort
Status: (Antwort) fertig Status 
Datum: 12:16 So 03.05.2009
Autor: piet.t

Hallo,

Schauen wir uns doch mal diese Zeile an:
1: Character.toUpperCase(ergebnis.charAt(a+1));

Du nimmst also das Zeichen nach dem Leerzeichen und übergibst es an die Funktion toUpperCase.
An die Funktion wird der primitive Datentyp char übergeben, eine Übergabe erfolgt hier "by Value", das heißt die Funktion bekommt zwar den "Wert" des Zeichens, kann am Original aber keine Veränderung vornehmen.
Den passenden Großbuchstaben gibt die Funktion als Rückgabewert zurück, und der verschwindet bei Deinem Code irgendwo im Nirvana.
Du müsstest also noch dafür sorgen, dass der Rückgabewert von toUpperCase an der apssenden Stelle in ergebnis landet.

Gruß

piet

Bezug
                
Bezug
Java Frage: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 18:18 So 03.05.2009
Autor: mrfivejunior

Vielen Danke.

Hab nun einfach die betroffene Zeile durch folgenden ersetzt:

ergebnis.setCharAt(a+1, Character.toUpperCase(ergebnis.charAt(a+1)));

Klappt nun alles.

Gruß Tobi

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Softwaretechnik und Programmierung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]