1. Pagkakasunod-sunod ng if
mga pahayag
Minsan ang isang programa ay kailangang magsagawa ng maraming iba't ibang mga aksyon depende sa halaga ng isang variable o sa halaga ng isang expression.
Sabihin nating ang ating gawain ay ganito:
- Kung ang temperatura ay mas malaki kaysa sa
20
mga degree, pagkatapos ay ilagay sa isang kamiseta - Kung ang temperatura ay mas malaki kaysa sa
10
mga degree at mas mababa sa (o katumbas ng)20
, pagkatapos ay magsuot ng panglamig - Kung ang temperatura ay mas mataas kaysa sa
0
mga degree at mas mababa sa (o katumbas ng)10
, pagkatapos ay magsuot ng kapote - Kung ang temperatura ay mas mababa sa
0
degrees, pagkatapos ay ilagay sa isang amerikana.
Narito kung paano ito maipakita sa code:
int temperature = 9;
if (temperature > 20)
System.out.println("put on a shirt");
else // Here the temperature is less than (or equal to) 20
{
if (temperature > 10)
System.out.println("put on a sweater");
else // Here the temperature is less than (or equal to) 10
{
if (temperature > 0)
System.out.println("put on a raincoat");
else // Here the temperature is less than 0
System.out.println("put on a coat");
}
}
If-else
ang mga pahayag ay maaaring mailagay sa loob ng isa't isa. Ginagawa nitong posible na ipatupad ang medyo kumplikadong lohika sa isang programa.
Ngunit ang halimbawa sa itaas ay kawili-wili din dahil maaari nating gawing mas simple ang code sa pamamagitan ng pag-alis ng mga kulot na braces:
int temperature = 9;
if (temperature > 20)
System.out.println("put on a shirt");
else // Here the temperature is less than (or equal to) 20
if (temperature > 10)
System.out.println("put on a sweater");
else // Here the temperature is less than (or equal to) 10
if (temperature > 0)
System.out.println("put on a raincoat");
else // Here the temperature is less than 0
System.out.println("put on a coat");
Gayunpaman, karaniwang isinulat ng mga programmer ang construct na ito nang medyo naiiba:
int temperature = 9;
if (temperature > 20)
System.out.println("put on a shirt");
else if (temperature > 10) // Here the temperature is less than (or equal to) 20
System.out.println("put on a sweater");
else if (temperature > 0) // Here the temperature is less than (or equal to) 10
System.out.println("put on a raincoat");
else // Here the temperature is less than 0
System.out.println("put on a coat");
Ang lahat ng tatlong mga halimbawang ito ay katumbas.
2. Nuances ng else
block
Kung hindi gagamit ng mga kulot na brace sa isang if-else
construct, ang else
tinutukoy ay ang pinakamalapit na naunang if
.
Halimbawa:
Ang aming code | Paano ito gagana |
---|---|
|
|
Kung titingnan mo ang code sa kaliwa, tila ang magiging output ng screen ay "Hindi mo kailangang magtrabaho". Ngunit hindi iyon ang kaso. Sa katotohanan, ang else
block at ang "You don't have to work" na pahayag ay nauugnay sa pangalawa (ang mas malapit) if
na pahayag.
Sa code sa kanan, ang nauugnay if
at else
naka-highlight sa pula. Bukod pa rito, ang mga kulot na brace ay inilalagay nang hindi malabo, na malinaw na nagpapakita kung anong mga aksyon ang isasagawa. Ang string na Hindi mo kailangang magtrabaho ay hindi kailanman ipinapakita kapag age
mas malaki kaysa sa 60
?
3. Halimbawa ng paggamit ng if-else
pahayag
Dahil na-explore natin if-else
nang mabuti ang pahayag, magbigay tayo ng halimbawa:
import java.util.Scanner;
public class Solution {
public static void main(String[] args)
{
Scanner console = new Scanner(System.in); // Create a Scanner object
int a = console.nextInt(); // Read the first number from the keyboard
int b = console.nextInt(); // Read the second number from the keyboard
if (a < b) // If a is less than b
System.out.println(a); // we display a
else // otherwise
System.out.println(b); // we display b
}
}