201711671229 《Java程序设计》第三周学习总结

教材学习内容总结

运算符、表达式和语句

重点:运算符、表达式和各种控制语句

难点:各种控制语句的用法

1、运算符有算术运算符、关系运算符、逻辑运算符、位运算符等;

算术运算符:+  -  *  /  %     算术表达式例子:x+2*y-30+(y+5);  结合方向为从左到右。

自增、自减运算符:++x(--x) 表示使用x之前,先使x得值增(减)1;

                                x++(x--)  表示使用x之后,使x的值增(减)1;

算术混合运算的精度从低到高排序的顺序是:

byte  short  char  int  long  float  double

如果表达式中有双精度浮点数(double型数据),则按双精度进行运算。例如,表达式5.0/2+10的结果12.5是double型数据。

<单精度浮点数、long型整数类似>

如果表达式中最高精度低于int型整数,则按int精度进行运算。

逻辑运算符:&&、||、! ,其中&&和 || 为二目运算符,实现逻辑与和逻辑或;!为单目运算符,实现逻辑非。逻辑运算符的操作元必须是boolean型数据,逻辑运算符可以用来连接关系表达式。

赋值运算符: =  ;  =  是一个双目运算符,左边的操作元必须是变量,不能是常量或表达式。结合方向为从右向左。

位运算符:  &  |  ~  ^     

二目:& 按位与   如果a,b两个数据对应位都是1,则c的该位是1,否则是0;|

|  按位或  如果a,b两个数据对应位都是0,则c的该位是0,否则是1;

^  按位异或  如果a,b两个数据对应位相同,则c的该位是0,否则是1;异或运算可用于加密。

单目: ~  按位非  如果a对应位都还是0,则c的该位是1,否则是0。

instanceof运算符:instanceof  该运算符是二目运算符,左面的操作元是一个对象,右面是一个类,当左面的对象是右面的类或子类创建的对象时,该运算符运算的结果是true,否则是false。  结合性从右到左。

2、Java里的语句课分为一下6类: 

(1)方法调用语句,如 System.out.println("Hello");

(2)表达式语句,如 x = 23;

(3)复合语句, 如 { 

      z = 123 + x;

System.out.printl("How are you");

}

(4)空语句,一个分号也是一个语句,称作空语句

(5)控制语句,分为条件分支语句、开关语句和循环语句

(6)package语句和improt语句

条件分支语句有:

if语句为单条件分支语句,if-else语句为单条件双分支语句, if-else if-else语句为多条件多分支语句。

开关语句为:switch语句,一般形式如下

switch(表达式){
    case 常量1: 若干个语句   break;
    case 常量2: 若干个语句   break;
    .
    .
    case 常量n: 若干个语句   break;
    default: 若干语句
}

循环语句有:

for循环语句,for(表达式1;表达式2;表达式3){  若干语句   }

表达式1完成变量的初始化;表达式2是值为boolean型的表达式,也叫循环条件;表达式3用来修整变量,改变循环变量。

while循环语句,while(表达式){   若干语句   }

do-while循环语句,do {   若干语句   } while(表达式)

在循环中常用到的还有break和continue语句;

break表示结束整个循环;  continue表示结束本次循环,开始下一次循环。

Java中给出了遍历数组更好的方法:

for(声明循环变量:数组的名字){   ……   }

教材学习中的问题和解决过程

在教材中出现了新的方法hasNextDouble(),hasNextFloat(),hasNextInt(),根据教材上的例子,了解不太清晰,之后自己查找了资料发现hasNext这一系列的方法起到的是扫描作用,相当于是预判的功能,如我们要输入一个整数时,如果直接使用nextInt(),那么当输入的字符不是整数时,程序会报异常。如果在前面加一个hasNextInt()判断就可以避免这样的错误。注意:hasNextInt要结合next,nextInt等方法一起使用。

代码调试中的问题和解决

感悟

有不太明白的程序时,比重复查看更好的方法是先静态运行(自己在练习本运行),在上机调试对比两者的差别。现在学到运算符和循环语句了,有c和c++语言基础学习这些语句基本就是重温一遍,也有不同的,Java中求余运算符%的操作元可以是浮点数和整数,同时Java中也新增了一个与for结合的数组遍历方法,也有package语句和import语句。

学习进度条

 代码行数(新增/累计)博客量(新增/累计)学习时间(新增/累计)重要成长
目标5000行30篇400小时(24000分钟) 
第三周108/1811/3123分钟/233分钟 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值