Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 17 su 17
  1. #11
    controllerò comunque ho fatto alcune prove su stringhe fatte da me e tutto andava bene, merito del costrutto try catch.

    Effettivamente è molto costoso in termini di memoria... ma non è detto che qualcuno nel forum non possa ottimiazzare!!

  2. #12
    Originariamente inviato da Lory1990
    controllerò comunque ho fatto alcune prove su stringhe fatte da me e tutto andava bene, merito del costrutto try catch.

    Effettivamente è molto costoso in termini di memoria... ma non è detto che qualcuno nel forum non possa ottimiazzare!!
    Si in effetti il try catch aggira il problema ma ne crea un altro...
    Se la stringa da parsare fosse " 4" tu imposti l'elemento dell'array a 0, quindi effettivamente crei un array con valori sbagliati.
    Quindi a meno di non peggiorare la situazione memoria facendo un altro replace degli spazi su quelle stringhe, ti consiglierei di usare dei valori di default quando crei quella stringa, quindi invece di memorizzare la riga della matrice come ";;;4", la memorizzi come " ; ; ;4" così non dovrai effettuare nessun replace, si tratta solo di evitare il parseInt se la gli elementi stringa dopo lo split fossero uguali a " ".
    lolide
    Java Programmer

    Informati

  3. #13
    eh.. potessi farlo!! sono valori estratti da un file di testo CSV o da un DB. Il db lo controllo, il file CSV no...

  4. #14
    Originariamente inviato da Lory1990
    eh.. potessi farlo!! sono valori estratti da un file di testo CSV o da un DB. Il db lo controllo, il file CSV no...
    Ah ok... allora perchè invece di usare split non lavori ciclando con un indice la stringa e usando substring... eviteresti i replace.
    lolide
    Java Programmer

    Informati

  5. #15
    Non ho capito nulla, mi spiace linguaggio troppo complesso. Questa è la prima apertura file che faccio

  6. #16
    Originariamente inviato da Lory1990
    Non ho capito nulla, mi spiace linguaggio troppo complesso. Questa è la prima apertura file che faccio
    Per il metodo di lettura da file/db tocca a te studiare il metodo migliore...
    Per quanto riguarda lo splitting, avendo una stringa del genere "4;;3;" potresti ciclare direttamente sui caratteri della String e prendere le substring contenenti i numeri.

    codice:
            String s = "43;;4;";
            char[] a = s.toCharArray();
            // conteggio separatori nella matrice. parto da 2 perche' non sono contati il primo e l'ultimo elemento
            int n = 2;
            for (int i = 0; i < a.length; i++) {
                if (a[i] == ';') {
                    n++;
                }
            }
            int[] iarr = new int[n];
            for (int i = 0; i < a.length; i++) {
                if (a[i] == ';') {
                    ...
    lolide
    Java Programmer

    Informati

  7. #17
    Interessante ciclarli così! bella idea! Grazie! Proverò a cambiare il codice per economizzare la memoria!

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 © 2026 vBulletin Solutions, Inc. All rights reserved.