Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    910

    [Java] Quanti caratteri può "reggere" un variabile stringa?

    Come da titolo...
    Quanti caratteri regge una variabile stringa?
    grazie

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    910
    no limit!??!

    ho scritto String a = "e tantissimi caratteri..."
    ecco quello che mi dice....

    String too long

  4. #4
    String#length() è un intero ---> al massimo 2147483647 caratteri (un carattere 16 bit). La dimensione di una stringa è, di fatto, illimitata; sempre che tu abbia abbastanza memoria...

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    910
    Originariamente inviato da mcolombara
    String#length() è un intero ---> al massimo 2147483647 caratteri (un carattere 16 bit). La dimensione di una stringa è, di fatto, illimitata; sempre che tu abbia abbastanza memoria...
    mmm allora perchè quell'errore?
    Non ho fato stringa.length()
    ma ho solo assegnato ad una stringa un testo enorme...
    String stringa = "sdgfsdg asdgsdagasd"
    Molto molto più lunga...
    (per un test) non sono pazzo!

  6. #6
    ho indicato String#length solo per evidenziare che il numero massimo di caratteri è indicato da un intero. Essendo indicato da un intero ha come valore massimo 2147483647; una stringa, quindi, potrebbe contenere, memoria permettendo, 2147483647 caratteri.

    E' anche vero che l'errore che indichi non riguarda un errore di memoria; sembrerebbe un errore dovuto a networking o a utilizzo di database. In che situazione ti viene segnalato l'errore (per curiosità)?

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    910
    Originariamente inviato da mcolombara
    ho indicato String#length solo per evidenziare che il numero massimo di caratteri è indicato da un intero. Essendo indicato da un intero ha come valore massimo 2147483647; una stringa, quindi, potrebbe contenere, memoria permettendo, 2147483647 caratteri.

    E' anche vero che l'errore che indichi non riguarda un errore di memoria; sembrerebbe un errore dovuto a networking o a utilizzo di database. In che situazione ti viene segnalato l'errore (per curiosità)?
    Ho scritto come ho detto
    String a = "sdgsdgsda gsdag sdag asdg asd gasdg sadg sdaasd gasdg asdg asdg dg s"
    Con molto Più testo, tutto qui...
    IL programma non fa nulla ho solo "dichiarato" quella variabile

  8. #8
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    Ho constatato che il compilatore 1.5 della sun fa un controllo già a compile time sulle stringhe inizializzate:

    String s = "...";

    accetta letterali stringhe lunghe fino a 65534 caratteri; uno di più e segnala l'erore di constant string too long.

    ovviamente utilizzando un leterale s di 65534 a runtime non da problemi se si allunga la stringa:

    String s = "...";
    s = s + s;

    è eseguito senza problemi perchè di memoria ce n'è.

    Sun Certified Java Programmer

    EUCIP Core Level Certified

    European Certification of Informatics Professionals

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.