Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    valutazione della condizione di verità in un if

    ciao, la mia è una domanda più teorica che pratica. all' interno di un if di questo tipo

    if(condizione1 && condizione2)

    nel caso la prima condizione risulti falsa, la seconda viene verificata? cioè, se è falsa viene saltata a prescindere? mi sarebbe utile saperlo perche nel caso la prima condizione risulti falsa nella seconda riceverei sicuramente una nullpointerexception, e preferirei non scrivere un codice troppo ingarbugliato.
    grazie

  2. #2
    se la prima condizione è falsa allora la seconda non viene verificata es:
    codice:
    Long pippo = null;
    if(pippo != null && pippo.longValue() > 10)
    Non produce nessuna NPE

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    No.
    Usando l'operatore &&, se la prima condizione risulta falsa, le successive non vengono valutate (si chiama short-circuit evaluation).
    Diversamente, usando l'operatore & (che, ricordo, è un operatore bit a bit), TUTTE le espressioni vengono valutate.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    ok, grazie a tutti

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