3:short s = 1; s = s + 1;有没有问题?如果有怎么解决?
short s = 1; s += 1;有没有问题?如果有怎么解决?
s=s+1,有问题,在把int型的值1跟short类型值进行运算时s会提升为int类型,结果是int型的,赋值给short类型时候可能会损失精度
要进行强制转换s=short(s+1)
s+=1没有问题,因为会自动进行了强制类型转换
8:三元运算符的格式是什么?
(条件表达式)?表达式1:表达式2;
执行流程是什么?
先判断条件表达式,结果是true,执行表达式1,false执行表达式2
9:使用三元运算符完成如下练习
比较两个数是否相等
获取两个数中最大值
获取三个数中最大值
class Sanyuan {
public static void main(String[] args) {
int a=10;
int b=15;
boolean v=(a==b)?true:false;
System.out.println(v);
}
}
class Compare {
public static void main(String[] args) {
int a=10;
int b=15;
int c=(a>b)?a:b;
System.out.println(c);
}
}
class Demo {
public static void main(String[] args) {
int a=10;
int b=15;
int c=5;
int d=(a>b)?((a>c)?a:c):((b>c)?b:c);
System.out.println(d);
}
}
11:if语句的格式有几种?注意事项是什么?分别在什么时候使用?
三种if语句最简单,当条件表达式为真时就执行语句,为假时,不执行
if else 语句当表达式为真时 执行if下语句,为假时执行else后边语句,
if elseif....else语句在第一个if表达式为真时,执行第一个if后语句,不满足重新判断elseif后的条件,满足就执行否则就执行后边语句当所有都不满足时执行else后的语句
12:看程序写结果:请自己独立分析,先不要编译运行。
第一题
int x = 1,y = 1;
if(x++==2 & ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
x=2y=2
---------------------------------------------------
第二题
int x = 1,y = 1;
if(x++==2 && ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
X=2,Y=1
---------------------------------------------------
第三题
int x = 1,y = 1;
if(x++==1 | ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
X=7Y=2
---------------------------------------------------
第四题
int x = 1,y = 1;
if(x++==1 || ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
x=7,y=1
---------------------------------------------------
第五题
boolean b = true;
13:编写代码实现如下内容:if语句实现用switch语句实现
考试成绩分等级
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
请根据给定成绩,输出对应的等级。
class If {
public static void main(String[] args) {
int grade=65;
if (grade>=90&&grade<=100) {
System.out.println("A等");
}else if (grade>=80&&grade<=89) {
System.out.println("B等");
}else if (grade>=70&&grade<=79) {
System.out.println("C等");
}else if (grade>=60&&grade<=69) {
System.out.println("D等");
}else if (grade<60) {
System.out.println("E等");
}else
System.out.println("输入错误");
}
}
class Demo {
public static void main(String[] args) {
int g=68;
if (g>100||g<0) {
System.out.println("输入错误");
}
int a=g/10;
switch (a) {
case 9:
case 10:
System.out.println("A等");
break;
case 8:
System.out.println("B等");
break;
case 7:
System.out.println("C等");
break;
case 6:
System.out.println("D等");
break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
System.out.println("E等");
break;
switch(x)
{
default:
y++;
case 3:
y++;
break;
case 4:
y++;
}
System.out.println("y="+y);y=5
16:根据输入的值,判断是星期几。(分别用if语句和switch语句实现)
输入:1
输出:星期1
class If {
public static void main(String[] args) {
int week =1;
if (week==1) {
System.out.println("星期一");
}else if (week==2) {
System.out.println("星期二");
}else if (week==3) {
System.out.println("星期三");
}else if (week==4) {
System.out.println("星期四");
}else if (week==5) {
System.out.println("星期五");
}else if (week==6) {
System.out.println("星期六");
}else if (week==7) {
System.out.println("星期日");
}else
System.out.println("输入错误");
}
}
class Switch {
public static void main(String[] args) {
int week=1;
switch (week) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期一");
break;
case 4:
System.out.println("星期一");
break;
case 5:
System.out.println("星期一");
break;
case 6:
System.out.println("星期一");
break;
case 7:
System.out.println("星期一");
break;
default:
System.out.println("输入错误");
break;
}