1:常见的逻辑运算符有哪些?
与& 或 | 非! 不等于!= 双与&& 双或 || 异或 ^
&和&&的区别是什么?
&表示左右两边的条件都要满足,程序左右两边都要执行判断 ,有flase为flase, &&表示,如过左边的条件为flase,程序就不去执行右边,有短路效果
|和||的区别是什么?
| 表示左右两边的任一一边满足即可,有true 为true,
逻辑双或|| : 左边表达式如果为true,右边不执行!
2:位运算符^的特点是什么?
,不同为真,相同为假。相同则为0,不同则为1
3:如何实现对两个整数变量的值进行互换,代码实现?
class DateExchange1{
public static void main (String [] args){
int a = 11;
int b = 19;
System.out.println("未转换之前的数据a:"+a+"\t"+"b:"+b);
a = a^b;
b = a^b;
a = a^b;
System.out.println ("转换之后的数据a:"+a+"\t"+"b:"+b);
}
}
4:三元运算符的格式是什么?
格式:(表达式)?表达式1的结果:表达式2的结果;
执行流程是什么?
比较计算表达式是否成立,如果为真,执行表达式1的结果,如果为假,执行表达式2的结果。
5:使用三元运算符完成如下练习
比较两个数是否相等
获取两个数中最大值
获取三个数中最大值
/*
比较两个数是否相等
获取两个数中最大值
获取三个数中最大值
*/
//导入包
import java.util.Scanner;
class Day0305{
public static void main( String[] args){
Scanner num = new Scanner(System.in);
System.out.println("请输入第一个个数据");
int num1 = num.nextInt();
System.out.println("请输入第二个个数据");
int num2 = num.nextInt();
System.out.println("请输入第三个个数据");
int num3= num.nextInt();
System.out.println("输入的三个数据分别为"+num1+"\t"+num2+"\t"+num3);
//比较两个数是否相等
boolean x = num1==num2;
System.out.println(x);
int a = (num1>num2)?num1:num2;
System.out.println("两个数中的最大值为"+a);
int b = (num1>num2)?((num1>num3)?num1:num3):((num2>num3)?num2:num3);
//int max3 = (x > y) ?((x>z )? x: z) : ((y>z)? y: z) ;
System.out.println("三个数中的最大值为"+b);
}
}
6:流程控制语句有几种?
3种 1顺序语句
2选择语句
有switch , for do ...while while
3循环语句
有if if....else if....else if ...else if....else
7:(预习if语句格式)看程序写结果:请自己独立分析,先不要编译运行。
第一题
int x = 1,y = 1;
if(x++==2 & ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
---------------------------------------------------
第二题
int x = 1,y = 1;
if(x++==2 && ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
---------------------------------------------------
第三题
int x = 1,y = 1;
if(x++==1 | ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
---------------------------------------------------
第四题
int x = 1,y = 1;
if(x++==1 || ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
---------------------------------------------------
第五题
boolean b = true;
if(b==false)
System.out.println("a");
else if(b)
System.out.println("b");
else if(!b)
System.out.println("c");
else
System.out.println("d");
---------------------------------------------------
8:编写代码实现如下内容:if语句实现
考试成绩分等级。
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
请根据给定成绩,输出对应的等级。
import java.util.Scanner;
class Day0308{
public static void main (String[]args){
/*
考试成绩分等级。
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
*/
Scanner achievement = new Scanner (System.in);
System.out.println("请输入一个人的成绩");
int a ;
//a = achievement.nextInt();
do{
a = achievement.nextInt();
//num = month.nextInt();
//System.out.println("请输入一个人的成绩");
if ( a>100&&a< 0){
System.out.println("输入的数据有误");
}
else if (a<=100&&a>=90){
System.out.println("A等");
}
else if (a<=89&&a>=80){
System.out.println("B等");
}
else if ( a<=79&&a>=70){
System.out.println("C等");
}
else if (a<=69&&a>=60){
System.out.println("D等");
}
else if (a<60){
System.out.println("E等");
}
}
while( a<0||a>100);
}
}
9:看程序,写结果,请给出分析
1) int x =10 ;
int a = x + x++; //此时a=20 x=11
System.out.println("a="+a); //a=20
System.out.println("x="+x) ; //x=11
int b = x + ++x ; // x=12 b= 23
System.out.println("b="+b) ; //b=23
System.out.println("x="+x) ; // x= 12
int c = x + x--; // x=11 c= 24
System.out.println("c =" + c); //c=24
System.out.println("x =" + x); // x=11
int d = x + --x; // d=22 x=10
System.out.println("d =" + d); d=22
System.out.println("x =" + x); x=10
2)
int a = 15;
int b = 2;
int x = a & b; 00001111&00000010=000000010=2
int y = a | b; // 00001111|00000010=00001111=15
int z = a ^ b; // 00001111^00000010=00001101=13
System.out.println(a + "&" + b + "=" + x); // 15&2=2
System.out.println(a + "|" + b + "=" + y); //15|2=15
System.out.println(a + "^" + b + "=" + z);
10:练习金山打字以及预习