class Demo
{
public static void main(String[] args)
{
int a=1,b;
b=(a>1)?100:200;
System.out.println("b="+b);
}
}
class Demo
{
public static void main(String[] args)
{
int a=1,b;
if(a>1)
b=100;
else
b=200;
System.out.println("b="+b);
}
}
上面的两个小程序的作用是一样的
三元运算符:
好处:可以简化 if else 代码
弊端:因为是一个运算符,所以运算必须有一个结果。
三元运算符
(条件表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1
如果条件为false,运算后的结果是表达式2
class Demo
{
public static void main(String[] args)
{
int x=3;
if(x>1)
{
System.out.println("a");
}
else if(x>2)
{
System.out.println("b");
}
else if(x>3)
{
System.out.println("c");
}
else
System.out.println("d");
System.out.println("hello");
}
}
打印结果为:a hello
switch 语句的特点:
1.switch语句选择的类型只有四种: byte ,short ,int,char
2.case 之间与default没有顺序。先执行第一个case,没有匹配的case执行default。
3.结束switch语句的两种情况,遇到break,执行到switch语句结束的大括号处。
4.如果匹配的case或者default没有对应的break,
那么程序会继续向下执行,运行可以执行的语句,
直到遇到break或者switch结尾结束。
class Demo
{
public static void main(String[] args)
{
int x=3;
switch(x)
{
default:
System.out.println("d");
case 1:
System.out.println("a");
case 2:
System.out.println("b");
case 4:
System.out.println("c");
}
}
}
输出结果为:d a b c
class Demo
{
public static void main(String[] args)
{
int x=3;
switch(x)
{
default:
System.out.println("d");
break;
case 1:
System.out.println("a");
break;
case 2:
System.out.println("b");
break;
case 4:
System.out.println("c");
break;
}
}
}
打印结果为 d
class Demo
{
public static void main(String[] args)
{
char a='+';
int x=9,y=3;
switch(a)
{
case'+':
System.out.println(x+y);
break;
case'-':
System.out.println(x-y);
break;
case'*':
System.out.println(x*y);
break;
case'/':
System.out.println(x/y);
break;
}
}
}
输出结果为:12