Avatar billede trophymanager Nybegynder
24. august 2005 - 23:36 Der er 9 kommentarer og
1 løsning

long string

Hej drengene.

Sidder og leger og har ramt en eller anden form for kritisk længde på en streng. Programmet sløver sinddsygt.

Jeg synes at kunne huske en anden String type for lange strenge.. Findes der sådan en?
Avatar billede arne_v Ekspert
24. august 2005 - 23:37 #1
nej

og der burde ikke være nogen praktisk limit på String

men hvis du "ændrer" meget på en String så kan en StringBuffer/StringBuilder
være meget hurtigere
Avatar billede trophymanager Nybegynder
24. august 2005 - 23:40 #2
jeg ændrer ca 900.000 gange i et loop.. og den blir op til 11 linier lang. hvor kan jeg læse om stringbuffer/builder?
Avatar billede arne_v Ekspert
24. august 2005 - 23:42 #3
Avatar billede arne_v Ekspert
24. august 2005 - 23:42 #4
Avatar billede trophymanager Nybegynder
24. august 2005 - 23:43 #5
tak for det. smid et svar :)
Avatar billede arne_v Ekspert
24. august 2005 - 23:44 #6
eksempel:

    private static char hexdigit[] = { '0', '1', '2', '3', '4', '5', '6', '7',
                                      '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
    public static String toHex(char[] c) {
        StringBuffer sb = new StringBuffer("");
        for (int i = 0; i < c.length; i++) {
            sb.append(hexdigit[(c[i] >> 4) & 0x0F]);
            sb.append(hexdigit[c[i] & 0x0F]);
        }
        return sb.toString();
    }
Avatar billede arne_v Ekspert
24. august 2005 - 23:44 #7
svar
Avatar billede trophymanager Nybegynder
24. august 2005 - 23:48 #8
oh.. ku du evt prøve at gi et lidt simplere eksempel med stringbufferen?
Avatar billede arne_v Ekspert
24. august 2005 - 23:50 #9
public static String arr2str(int[] a) {
      StringBuffer sb = new StringBuffer("");
      for(int i = 0; i < a.length; i++) {
        if(i > 0) {
            sb.append(",");
        }
        sb.append(a[i]);
      }
      return sb.toString();
  }
Avatar billede trophymanager Nybegynder
24. august 2005 - 23:52 #10
perfekt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester