Meinews.de  


Zurück   Meinews.de > Forum > Newsgroups de.comp.lang.* Forum > Newsgroup de.comp.lang.java
Registrieren FAQ Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren

Newsgroup de.comp.lang.java Die Programmiersprache Java

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 07-13-2008, 12:04 AM
hajurek
 
Beiträge: n/a
Standard String, StringBuffer, byte[], to/from Integer, parse, Stream, file...

Hi,

in C(++) gibt es char[], fopen() und ein paar nützliche Routinen.

In Java gibt es einen Wust verschiedener Darstellungsmöglichkeiten
und ein (für mich) unverständliches Durcheinander, was man mit
welcher Art machen kann, und wie man etwas in was anderes wandeln
kann.

Steckt dahinter irgendeine Systematik, oder muss man einige hundert
Routinen stur auswendig lernen?

hj
Mit Zitat antworten
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Meinews.de
Standard Sponsored Links

  #2  
Alt 07-13-2008, 12:45 AM
Bernd Eckenfels
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream, file...

hajurek <hajurek*arcor.de> wrote:
> In Java gibt es einen Wust verschiedener Darstellungsmöglichkeiten
> und ein (für mich) unverständliches Durcheinander, was man mit
> welcher Art machen kann, und wie man etwas in was anderes wandeln
> kann.


Leider ist es nicht verstaendlich worauf du hinauswillst. Was ist deine
Frage?

> Steckt dahinter irgendeine Systematik, oder muss man einige hundert
> Routinen stur auswendig lernen?


Du musst nur wenige Konzepte in Java kennen, die detailierten Methoden kann
man dann nachschlagen. Das gilt für alle Klassenbibliotheken (egal in
welcher Sprache).

Gruss
Bernd
Mit Zitat antworten
  #3  
Alt 07-13-2008, 12:57 AM
Stefan Ram
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream, file...

hajurek <hajurek*arcor.de> writes:
>Steckt dahinter irgendeine Systematik, oder muss man einige hundert


»Ein Buch kann viel für den Einstieg bringen, aber
richtig schlau wird man erst, wenn man die API-Doku
auswendig kennt«

Jochen Theodorou

Es sind aber weniger als 3793 Klassen:

http://download.java.net/jdk7/docs/a...ses-frame.htme

Na gut, das war jetzt wohl ohne J2EE.

Man sollte auch schon noch einige grundlegende Dinge außerhalb
von J2SE und EE kennen, also wenigstens ASM, AspectJ, BCEL,
BEA, BeanShell, Doclets, Hibernate, Jakarta Commons natürlich,
JavaBeans, Java ME, JGoodies, JSF, Servlets, JSP, log4j!,
Junit!, Maven und Ant natürlich unbedingt und Eclipse mit den
wichtigsten Plugins, sowie Netbeans, Rhino, Applets.

Ja, und auch, wenn er jetzt weniger schreibt, sollte man
zumindestens wissen, wer SMA ist, das kann ja auch einmal
in einer Prüfung vorkommen.

Bei C++ hat man das natürlich alles nicht: eine kleine und
übersichtliche Sprache. Nur: Weil C++ in den meisten Büros
heute auch schon von Schreibkräften und deren Schulkindern
beherrscht wird, gibt es dort so viel Konkurrenz, daß die
Bezahlung auch entsprechend niedriger ausfällt.

Mit Zitat antworten
  #4  
Alt 07-13-2008, 04:51 AM
Frank Buss
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream, file...

Stefan Ram wrote:

> Ja, und auch, wenn er jetzt weniger schreibt, sollte man
> zumindestens wissen, wer SMA ist, das kann ja auch einmal
> in einer Prüfung vorkommen.


Und würde man dafür Punktabzug bekommen, weil man die Zeit mit Newsgroup
lesen verschwendet hat, statt zu arbeiten? :-)

> Bei C++ hat man das natürlich alles nicht: eine kleine und
> übersichtliche Sprache.


Hast du hier ein Smily vergessen?

> Nur: Weil C++ in den meisten Büros
> heute auch schon von Schreibkräften und deren Schulkindern
> beherrscht wird, gibt es dort so viel Konkurrenz, daß die
> Bezahlung auch entsprechend niedriger ausfällt.


Wenn man Glück hat, dann wissen Schreibkräfte und Schulkinder, was eine
Datei ist und haben so eine ungefähre Vorstellung davon, was Verzeichnisse
sind. Daß es sowas wie Programmiersprachen gibt, wissen dann nur noch
wenige und beherrschen ist die ganz große Ausnahme. Wenn, dann meist Basic,
oder bei Schulkindern was gerade für das neueste Ballerspiel für die
MOD-Programmierung gebraucht wird, wie Lua.

--
Frank Buss, fb*frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de
Mit Zitat antworten
  #5  
Alt 07-13-2008, 12:13 PM
hajurek
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream,file...

Stefan Ram schrieb:
> http://download.java.net/jdk7/docs/a...ses-frame.htme


Danke für deine Hilfe.

Du bist der Größte!

Du hast sicher schon ein Backup vom Internet gemacht.

hj
Mit Zitat antworten
  #6  
Alt 07-13-2008, 12:27 PM
Frank Buss
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream, file...

hajurek wrote:

> Du hast sicher schon ein Backup vom Internet gemacht.


Ein Backup vom Internet zu machen wäre recht teuer, denn dieses Netzwerk
besteht ja aus einigem an Kabeln, Satellitenverbindungen, Routern usw.
Falls du das World Wide Web meinst, da gibt es schon ein Backup:

http://www.archive.org

Google ist auch nicht schlecht mit der "Im Cache" Funktion.

--
Frank Buss, fb*frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de
Mit Zitat antworten
  #7  
Alt 07-13-2008, 01:27 PM
Sven Köhler
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream,file...

> in C(++) gibt es char[], fopen() und ein paar nützliche Routinen.
>
> In Java gibt es einen Wust verschiedener Darstellungsmöglichkeiten
> und ein (für mich) unverständliches Durcheinander, was man mit
> welcher Art machen kann, und wie man etwas in was anderes wandeln
> kann.
>
> Steckt dahinter irgendeine Systematik, oder muss man einige hundert
> Routinen stur auswendig lernen?


zunächst String vs. StringBuffer:

String ist immutable - d.h. der Wert eines String-Objektes kann nicht
verändert werden. Wie würdest du nun in einer Schleife einen String
zusammenbauen? Etwa so?

String s = "";
for (int i=0; i<n; i++)
s += "abc";

Das ist keine gute Sache, denn aus der hier wird bei jedem "s+=" wie
wild kopiert und der Algorithmus hat quadratische Laufzeit O(n^2).
Für solche Aufgaben gibt es daher StringBuffer. Folgendes hat lineare
Laufzeit:

StringBuffer sb = new StringBuffer();
for (int i=0; i<n; i++)
sb.append("abc");
String s = sb.toString();

StringBuffer stellt quasi einen veränderbaren (man kann anhängen usw.)
String dar - man kann mit StringBuffer effizient Strings zusammenbauen.


File vs. FileInputStream usw.

File stellt eine API zum arbeiten mit Dateinamen/pfaden zur Verfügung.
Ich wüsste nicht, dass C++ eine hätte. Aber in Java kannst du
Platformunabhängig mit Dateinamen arbeiten (den Ordner erfragen, in dem
eine Datei liegt, einen Dateinamen einer Datei in einem Ordner aus dem
File-Objekt des Ordners und nem String zusammenbauen, usw.)

File-Objekte öffnen eine Datei nicht. Das passiert erst beim erzeugen
eines FileInputStreams und dergleichen.


Ich weiss nicht, was deine Fragen zu byte[], Integer.parseInt() usw.
sein könnten. Also stelle konkrete Fragen.

In Java lässt sich schon eine Systematik erkennen. Manchmal fehlt die
aber auch. Ein Beispiel wäre BigInteger. Er ist wie String immutable.
Aber es gibt keinen BigIntegerBuffer um BigIntegers ohne viel
Kopieraufwand effizient zusammenzubauen. Schande über die Entwickler.


Grüße,
Sven
Mit Zitat antworten
  #8  
Alt 07-13-2008, 02:53 PM
hajurek
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream,file...

Stefan Ram schrieb:
>
>> String fn = uri.getPath();
>> StringBuffer fn1 = new StringBuffer(fn.length());
>> for (int i = 0; i < fn.length(); i++) {
>> char zeichen = fn.charAt(i);
>> fn1.append(zeichen=='/' ? JrbeApp.slash : zeichen );
>> }
>> fn=fn1.toString();

>
> Vielleicht ist folgendes gemeint?
>
> final java.lang.String fn = uri.getPath().replaceAll( '/', JrbeApp.slash );
>

Vieleicht meinst du folgendes:

String fn = uri.getPath().replaceAll( "[/]", JrbeApp.slash );

Der erste Parameter ist ein String und soll eine regular expression
sein.

Aber auch so stürzt das Programm ab.

Wenn du zu viel Zeit hast, kannst du mal die Dokumentation lesen.
Ich lasse meinen Code so stehen. Er funktioniert.

hj

Mit Zitat antworten
  #9  
Alt 07-13-2008, 03:09 PM
Heiner Kücker
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream, file...

Sven Köhler schrieb
>> in C(++) gibt es char[], fopen() und ein paar nützliche Routinen.
>>
>> In Java gibt es einen Wust verschiedener Darstellungsmöglichkeiten
>> und ein (für mich) unverständliches Durcheinander, was man mit
>> welcher Art machen kann, und wie man etwas in was anderes wandeln
>> kann.
>>
>> Steckt dahinter irgendeine Systematik, oder muss man einige hundert
>> Routinen stur auswendig lernen?

>
> zunächst String vs. StringBuffer:
>
> String ist immutable - d.h. der Wert eines String-Objektes kann nicht
> verändert werden. Wie würdest du nun in einer Schleife einen String
> zusammenbauen? Etwa so?
>
> StringBuffer stellt quasi einen veränderbaren (man kann anhängen usw.)
> String dar - man kann mit StringBuffer effizient Strings zusammenbauen.


Man müsste noch den StringBuilder erwähnen,
entspricht dem StringBuffer, ist aber nicht synchronisiert.

Den StringBuffer kann man auch als Output-Parameter
(Paramter-Objekt, auf welches eine Methode einen Seiteneffekt ausführt)
verwenden.

> File vs. FileInputStream usw.
>


Streams gab es schon in C/C++.

> Ich weiss nicht, was deine Fragen zu byte[], Integer.parseInt() usw. sein
> könnten. Also stelle konkrete Fragen.


In C gibt es String-Bibliotheken, die mit Byte-Arrays arbeiten.

In Java ist das weniger übich, aber möglich.
Zu beachten ist der Unterschied zwischen char und byte,
Unicode vs. ASCII/ANSI, 16 Bit vs. 8 Bit.

Meist benötogt man irgendwann doch Strings,
weil die meisten APIs das erwarten,
schon wenn es um Konsolen- oder Log-Ausgaben geht.

Bei der Umwandlung byte zu char (String) muss das
Encoding (unter Windows meist ISO-8859-1) beachtet werden.

> In Java lässt sich schon eine Systematik erkennen. Manchmal fehlt die aber
> auch. Ein Beispiel wäre BigInteger. Er ist wie String immutable. Aber es
> gibt keinen BigIntegerBuffer um BigIntegers ohne viel Kopieraufwand
> effizient zusammenzubauen. Schande über die Entwickler.


Meinst Du einen mutablen BigInteger oder BitSet ?

Ein mutabler BigInteger ist über eine Wrapper-Klasse
schnell gebastelt.

> Grüße,
> Sven


Übrigens wusste ich gar nicht, dass
Stefan Ram so viel Humor hat.

--
Heiner Kücker
www.heinerkuecker.de
www.control-and-command.de

Mit Zitat antworten
  #10  
Alt 07-13-2008, 03:21 PM
Thomas Thiele
 
Beiträge: n/a
Standard Re: String, StringBuffer, byte[], to/from Integer, parse, Stream,file...

Stefan Ram schrieb:

> Bei C++ hat man das natürlich alles nicht: eine kleine und
> übersichtliche Sprache.


LOL. Im vergleich zu Java?!?

> Nur: Weil C++ in den meisten Büros
> heute auch schon von Schreibkräften und deren Schulkindern
> beherrscht wird,


LOL.

Danke, sowas erheitet den Sonntag.
Mit Zitat antworten
 
Antwort


Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen
Es ist dir nicht erlaubt, auf Beiträge zu antworten
Es ist dir nicht erlaubt, Anhänge anzufügen
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten

vB Code ist An
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
Byte-/Integer-Umwandlung Michael Landenberger Newsgroup de.comp.lang.delphi.misc 16 07-14-2008 05:41 PM
Convert string to byte Christian Havel Newsgroup microsoft.public.de.german.entwickler.dotnet.csharp 99 05-06-2008 03:01 PM
Byte-Array in String Herbert Bodner Newsgroups microsoft.public.de.fox 3 03-26-2008 02:05 PM
String erweitern in einem File (String kommt mehrmals vor) cypherpunks Newsgroup de.comp.os.unix.shell 7 03-05-2008 01:28 PM
stream in array of byte (.net) Jocke Esser Newsgroup de.comp.lang.delphi.misc 3 12-20-2007 04:24 PM


Alle Zeitangaben in WEZ. Es ist jetzt 01:33 AM Uhr.



Powered by: vBulletin Version 3.6.7 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Forum SEO by Zoints