Java una linea if instruzione
Ci sono 52 parole chiave o parole predefinite nel linguaggio Java. Chiamiamo queste parole riservate poiché hanno un significato predefinito specifico nella lingua.
Fuori da questo pool di parole riservate, if-else
è una di queste. Usiamo questa parola chiave per specificare qualsiasi condizione. La struttura del blocco if-else
è simile a questa:
if (condition == true) {
doThis;
} else {
doSomethingElse;
}
Possiamo dare qualsiasi espressione nella condition
presente tra parentesi ()
.
Se l’espressione nel blocco if
risulta vero, l’istruzione doThis
verrà eseguita. E se un’espressione restituisce false, allora dovrebbe essere eseguito doSomethingElse
.
Come possiamo vedere, occorrono cinque righe per eseguire un semplice tipo di operazione if-else
. L’alternativa a questo tipo di valutazioni è utilizzare operatori ternari.
Operatore ternario in Java
Un operatore ternario è una forma abbreviata dell’istruzione if-else
di Java. La sintassi di questo operatore è definita come di seguito.
condition ? expression1 : expression2;
Nell’affermazione precedente, viene valutata per prima la condition
. Se condition
restituisce true, viene eseguita expression1
. E se condition
restituisce false
, viene eseguita expression2
.
Poiché l’operatore precedente accetta tre condizioni di operandi
e due espressioni, viene indicato come operatore ternario.
Di seguito è riportato il programma di esempio per dimostrare lo stesso.
package ternaryOperator;
public class TernaryOperator {
public static void main(String[] args) {
int marks = 67;
String distinction = marks > 70 ? "Yes" : "No";
System.out.println("Has made a distinction : " + distinction);
}
}
Nel programma di cui sopra, marks>70
è la condizione if
. ?
è la clausola then
e :
è else
parte di essa.
Il programma dovrebbe valutare se i segni sono più di un numero predefinito o meno. Poiché la condizione marks > 70
viene valutata falsa, No
viene stampato sull’output della console.
L’output per il programma di cui sopra è il seguente.
Has made a distinction: No
Istruzione if-else
di una riga che utilizza filter
in Java 8
Java 8 e versioni successive hanno l’utilità dei flussi. Il metodo filter
dei flussi accetta un Predicato
e si comporta come if-else
nel linguaggio Java.
package streams;
import java.util.Arrays;
import java.util.List;
public class Java
8Streams {
public static void main(String[] args) {
List<String> stringList = Arrays.asList("1", "2");
stringList.stream().filter(string -> string.equals("1")).forEach(System.out::println);
}
}
Il programma precedente crea un’istanza di una lista utilizzando il metodo Arrays.asList()
. Qui abbiamo dato 1 e 2 come valori String. Ora abbiamo creato un flusso di questo elenco utilizzando la funzione stream
. Una volta creato lo stream, viene applicata la funzione filter
. Questa funzione filtra i dati in base alla condizione definita. L’operatore ->
è chiamato operatore lambda
. Itera ogni valore del flusso nella funzione filter
. E se la condizione è soddisfatta, il valore va al metodo forEach()
per eseguire le azioni finali.
Poiché non è stato definito alcun caso per gestire la condizione else, il valore deve essere semplicemente bypassato e verrà eliminato.
E l’output del programma sopra è dato di seguito:
1
Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.
LinkedIn