Java学习day3

来源:互联网 发布:数控机床编程好学吗 编辑:程序博客网 时间:2024/05/17 22:20

1.运算符

(1)算术运算符:+-*++--

(2)+的用法:加法、正号、字符串连接符

(3)++--的区别:单独使用时----放在操作数据的前面和后面的效果一样;参与操作使用时----放在操作数的前面:先自增或者自减,再参与操作,如int  a=10int  b=++a(结果为a=10b=11);   放在操作数的后面:先参与操作,再自增或者自减,如int  a=10int  b=a++(结果为a=11b=10);

(4)赋值运算符:特点是隐含了自动强制转换

(5)比较运算符:最终结果为boolean类型

(6)逻辑运算符:!、&&||,用于连接boolean类型的式子;&&&效果是一样的,只不过有短路效果,即左边false,右边不执行,同理|||也是一样

//不使用第三方变量,实现两个整数变量的交换

//方式一:用位异或实现

    a=a^b;

    b=a^b;

    a=a^b;

    System.out.println("a="+a+"---"+"b="+b);

    //方式二:用变量相加法

    a=a+b;

    b=a-b;

    a=a-b;

    System.out.println("a="+a+"---"+"b="+b);

    //方式三:一句话的事

    b=(a+b)-(a=b);

(7)     System.out.println("a="+a+"---"+"b="+b);

(8)位运算符:^特殊用法

(9)三元运算符

2.键盘录入

(1)导包-----创建对象-----获取数据

(2)把三元运算符的案例加入键盘录入改进

3.流程控制语句:

(1)顺序结构

(2)选择结构

(3)循环结构

4.If语句:

(1)三种结构格式

(2)注意事项:表达式结果为boolean类型、不省略大括号

5.面试题:

  Short  s=1

  S=s+1

  Short  s=1

  S+=1

上面两个代码有没有问题?如果有,哪里有问题呢?

注意:第一个有问题s在做+运算时,先将s转换成int类型再进行计算,将结果赋值给s时有问题因为计算结果为int类型而原来sshort类型。第二个没有问题,扩展的赋值运算符其实隐含了一个强制类型转换,s+=1,不是等价于s=s+1,而是等价于s=s的数据类型)(s+1);

原创粉丝点击