1、if语句
第一种if格式
if的格式:if(字面量为Boolean类型的表达式或方法或者变量){
语句A
语句B
}
当判断条件为真时就会逐一执行大括号的语句
Boolean foo = true;
if(foo){
System.out.println("active")}
第二种if格式
if (字面量为Boolean类型的表达式或方法或者变量) {
语句块A;
}
else{
语句块B;
}
执行顺序:如果条件表达式为真执行A,条件表达式为假执行B。
Boolean foo = false;
if(foo){
System.out.println("active");
}else{
System.out.println("B");
}
第三种if格式
if(条件表达式1){
语句块A
}else if (条件表达式2){
语句块B
}else if (条件表达式3)
语句块C
else{
语句块D
}
执行顺序:条件1为真,执行A;条件2为真,执行B;条件3为真,执行C;
1和2和3都不满足,执行D。
Boolean foo = false;
if(foo){
System.out.println("active");
}else if(3<4){
System.out.println("B");
}
2、switch语句
switch (表达式) {
case 1:
操作1的语句;
break;
case 2:
操作2的语句;
break;
…
case n :
操作n的语句;
break;
default:
默认语句; }
执行顺序:如果switch表达式的值与值1相等,执行操作1的语句;
与值2相等,执行操作2的语句;
……
与值12……都不相等,执行默认语句;
int a = 0;
switch(a){
case 0:
System.ou.println("0");
break;
case 1:
System.out.println("1");
break;
default:
System.out.println("default");
break;
}
switch(可以放byte型short型int型char型,不能放long、float、double、boolean型)从1.7版本开始也可以放String字符串类型
若不加break会引起混论
switch(放入char型):
char a = 'c';
switch(a){
case 'c':
System.ou.println("0");
break;
case 'b':
System.out.println("1");
break;
default:
System.out.println("default");
break;
}
- 下面给出一个switch语句的例子
- 从键盘上输入一个年份月份,输出该年还有多少天.
import java.util.*;
public class Year{
public static void main(String[] args){
Scanner s = new Scanner(System.in);
System.out.println("Pleas enter year and month:");
int y = s.nextInt();
int m = s.nextInt();
int days = 0;
switch(m){
case 1:
days = days + 31;
case 2:
if(y % 400 == 0 ||y % 4 == 0){
days = days + 29;
}else{
days = days + 28;
}
case 3:
days = days + 31;
case 4:
days = days + 30;
case 5:
days = days + 31;
case 6:
days = days + 30;
case 7:
days = days + 31;
case 8:
days = days + 31;
case 9:
days = days + 30;
case 10:
days = days + 31;
case 11:
days = days + 30;
case 12:
days = days + 31;
}
System.out.println("还有"+days+"天");//任何一个数据和字符串做加法得到的结果都是变成字符串
}
}