Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 12 su 12

Discussione: gestione eccezioni

  1. #11
    non mi dilungo a sccrivere tutto il codice che ritengo sia poco importante,ma cmq si riaggancia a ciò che è scritto sopra...

    public void aggiungiTesto(String testo, int posizione) {
    try {
    if (testo != null) {
    contenuto = contenuto.substring(0, posizione) +
    testo + contenuto.substring(posizione);
    }
    } catch (NullPointerException exc) {
    System.out.println("Il contenuto è null : " +
    exc.getMessage());
    contenuto = "" + testo;
    } catch (StringIndexOutOfBoundsException exc) {
    System.out.println("L'indice " + posizione +
    " è invalido : " + exc.getMessage());
    contenuto = (posizione < 0 ? testo + contenuto :
    contenuto + testo);
    }
    }


    in questo esempio viene controllato se il testo è diverso da null. se non è così allora si passa all'eccezioneNullPointerException che si
    verifica se il contenuto è null. perchè viene scritto conteunto = "" + testo?

    poi c'è anche l'eccezione StringOutOfBoundsException che da quello che ho cpt se supera sia in positivo che in negativo la dimensione del contenuto del file và in esecuzione l'eccezione.
    anche qui perchè contenuto = (posizione < 0 ? testo + contenuto :
    contenuto + testo);


    nella spiegazione mi dice: In particolare abbiamo fatto in modo che (sfruttando anche un operatore
    ternario) se la variabile posizione è specificata con un valore negativo, allora la
    variabile testo viene messa all’inizio
    , prima della variabile contenuto (come se fosse
    stata specificata la posizione 0). Se invece viene impostata con un valore superiore
    all’ultimo indice disponibile per il contenuto, allora la variabile testo viene aggiunta
    alla fine del contenuto.

    in che modo viene messa all'inizio? quale è il comando?

  2. #12
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    ma usare i tag code pare proprio brutto??
    No, se il testo è null il metodo termina, non viene fatto niente visto che non c'è niente nel ramo else.
    Secondo: NullPointerException può essere lanciata da contenuto (nessuno si chiede infatti se è valido).
    StringOutofBoundsException è una eccezione che hai se prendi indici negativi oppure una stringa di 5 caratteri provi ad accedere al sesto.
    Il commento poi è corretto
    RTFM Read That F*** Manual!!!

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.