---恢复内容开始---
1.+、-、*、/、%、++、--
①正号;②加法运算;③连接符
除法是两个数相除所得的结果,取余是除法操作的余数。
++前置表示现将一个数自加然后进行赋值,++后置表示先赋值后进行自加,--同理。
2.基本赋值运算符:=
扩展赋值运算符:+=、-=、*=、/=、%=
+=是将运算符两侧的数相加后得到结果
3.有问题。s是short类型,1是int类型,s+1的返回值为int,从int转换成short类型会有损失。用扩展赋值运算符进行运算。
没有问题。
4.==、!=、>、<、>=、<=
关系运算符输出的是布尔类型的值true和false。
5.&、|、^、!、&&、||
&是并且,遇false则false;&&是短路与,如果运算符左边是false那么右边就不执行。
|是或者,有true则true;||是短路或,如果运算符左边是true那么右边就不执行。
6.一个数被另一个数位异或两次,该数本身不变。
7.int temp = a;
int a = b;
int b = temp;
8.(关系表达式)?表达式1:表达式2
先对关系表达式进行判断,如果结果是true,输出表达式1,如果结果是false,输出表达式2.
9.
class Demo1_Operater {
public static void main(String[] args) {
int x = 10;
int y = 20;
boolean b = (x == y)? true : false;
System.out.println(b);
}
}
class Demo1_Operater {
public static void main(String[] args) {
int x = 10;
int y = 20;
int z = (x > y)? x : y;
System.out.println(z);
}
}
class Demo1_Operater {
public static void main(String[] args) {
int x = 10;
int y = 20;
int z = 30;
int temp = (x > y)? x : y;
int max = (temp > z)? temp : z;
System.out.println(max);
}
}
10.顺序结构
选择结构
循环结构
11.三种
格式1:
if(比较表达式){
语句体;
}
注意事项:*比较表达式无论简单还是复杂,结果必须是boolean类型。
*if语句控制的语句体如果是一条语句,大括号可以省略;如果是多条语句,就不能省略,建议永远不要省略。
*一般来说:有左大括号就没有分号,有分号就没有左大括号。
只有一个判断条件时使用。
格式2:
if(比较表达式){
语句体1;
}else{
语句体2;
}
注意事项:else后面没有比较表达式,只有if后面有。
有两个判断条件时使用。
格式3:
if(比较表达式1){
语句体1;
}else if(比较表达式2){
语句体2;
}else if(比较表达式3){
语句体3;
}
...
else{
语句体n+1;
}
注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示。
有两个以上的判断条件时使用。
12.
1.x=2 y=2
2.x=2 y=1
3.x=7 y=2
4.x=7 y=1
5.b
13.
import java.util.Scanner;
class Grade {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入成绩:");
int grade = sc.nextInt();
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 >= 0 && grade < 60) {
System.out.println("E等");
}else{
System.out.println("请输入正确的成绩");
}
}
}
14.
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
switch:说明这是switch语句
表达式:可以是byte int short char
JDK5以后可以是枚举
JDK7以后可以是字符串
case:后面的值就是要和表达式进行比较的值
break:表示程序到这里中断,跳出switch语句
default:如果所有的情况都不匹配,就执行这里,相当于if语句中的else
a:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
b:default可以省略吗?
*可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
*特殊情况:*case就可以把值固定。
*A,B,C,D
c:break可以省略吗?
*最后一个可以省略,其他最好不要省略
*会出现一个现象:case穿透
*最终建议不要省略
d:default一定要在最后吗?
*不是,可以在任意位置,但是建议在最后。
e:switch语句的结束条件
*a:遇到break就结束了
*b:执行到switch的右大括号就结束了
15.y=5
先执行case 3和case 4没有符合的跳转到default对y执行一次自加,由于default没有break,发生case穿透,继续执行case 3,再进行一次自加后有break跳出switch程序,所以y一共进行了两次自加,结果是5.
16.
import java.util.Scanner;
class Week {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int x = sc.nextInt();
switch (x) {
case 1:
System.out.println("星期1");
break;
case 2:
System.out.println("星期2");
break;
case 3:
System.out.println("星期3");
break;
case 4:
System.out.println("星期4");
break;
case 5:
System.out.println("星期5");
break;
case 6:
System.out.println("星期6");
break;
case 7:
System.out.println("星期7");
break;
default:
System.out.println("请输入正确的日期");
break;
}
}
}
import java.util.Scanner;
class Week {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int x = sc.nextInt();
if (x == 1) {
System.out.println("星期1");
}else if (x == 2) {
System.out.println("星期2");
}else if (x == 3) {
System.out.println("星期3");
}else if (x == 4) {
System.out.println("星期4");
}else if (x == 5) {
System.out.println("星期5");
}else if (x == 6) {
System.out.println("星期6");
}else if (x == 7) {
System.out.println("星期7");
}else{
System.out.println("请输入正确的日期");
}
}
}
---恢复内容结束---