JavaDay3问题解答
1:常见的算术运算符有哪些?
算数运算符号有+ - * /(取商) %(取余)
+运算符的作用有哪些?
(1)计算加法
(2)组合不同或同种类的信息
除法和取余的区别?
除法使用 / 符号,并且整数相除只会得到整数。
取余使用%符号
++和–的使用规则?
++与–表示自增与自减,例如a++,表示运算完成之后的自增,++a表示对a先进行自增,再进行接下来的运算。
2:常见的赋值运算符有哪些?
赋值运算,变量1 = 变量2
+=运算的作用是什么?
+=运算的作用在于进行+运算之后的赋值操作。
扩展的赋值运算符有什么特点?
扩展的赋值运算符号 += -= /= *= %=
特点在于计算与赋值操作在一行完成,同时隐含了变量类型的强制转换
3:short s = 1; s = s + 1;有没有问题?如果有怎么解决?
有问题,s被定义为short类型,所以,在 s = s + 1的过程中变量s被Java自动提升成为了int类型
解决方式:
int new_var ;
short s = 1;
new_var = s + 1;
short s = 1; s += 1;有没有问题?如果有怎么解决?
没有问题,因为s += 1 的等价形式为s = (s的数据类型)(s + 1),扩展赋值转换了数据的类型
4:常见的关系运算符有哪些?
> < >= <= !=
关系运算符的结果有什么特点?
不管关系运算的过程有多么复杂,最终的返回值都是boolena类型值,false或者true
5:常见的逻辑运算符有哪些?
与:&和&&的区别是什么?
区别在于&&具有短路功能
条件1 && 条件2
如果条件1的结果为false,则不用计算条件2,直接返回false
条件1 || 条件2
如果条件1的结果为ture,则不用执行右边的条件2
6:位运算符^的特点是什么?
异或的特点在于,一个数被另一个数进行异或两次后得到的还是本身
int a;
int b;
a = a ^ b ^ b = a
7:如何实现对两个整数变量的值进行互换。
int a = 3;
int b = 4;
"方法1:中间变量法"
int c;
c = a;
a = b;
b = c;
"方法2:一句话解决法"
a = (a + b) - (b = a)
"方法3:异或法"
a = a ^ b;
b = a ^ b; // b =a ^ b ^ b = a
a = a ^ b; // a = a ^ b ^ a = b
8:三元运算符的格式是什么?
(条件1)?结果1:结果2;
执行流程是什么?
先对条件进行判断,true则执行结果1,false则执行结果2
9:使用三元运算符完成如下练习
比较两个数是否相等
(a == b)?System.out.println("相等"): System.out.println("不相等");
获取两个数中最大值
(a > b)? System.out.println("a大"): System.out.println("b大");
获取三个数中最大值
int temp;
(a > b)? temp = a: temp = b;
(temp>c)? temp: c;
10:流程控制语句有几种?
三种,(1)顺序结构(2)选择结构(3)循环结构
11:if语句的格式有几种?注意事项是什么?分别在什么时候使用?
三种格式,
(1)
if(consision){
...;}
(2)
if(consision){
...;}else {
...;}
(3)
if(consision1){
...;}else if(consision2) {
...;}else{
...;}
12:看程序写结果:请自己独立分析,先不要编译运行。
第一题
int x = 1,y = 1;
if(x++==2 & ++y==2)
{
x = 7;
}
System.out.println("x="+x+",y="+y);
结果是:x = 2,y = 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 = 7,y = 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;
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");
结果:b
13:编写代码实现如下内容:if语句实现
考试成绩分等级。
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
请根据给定成绩,输出对应的等级。