20145320 《Java程序设计》第2周学习总结

教材学习内容总结

3.1 类型、变量与运算符

基本类型

整数(short、int、long) 、字节(byte) 、浮点数(float/double) 、字符(char):汉字、英文字符都是双字节的

布尔(boolean):boolean类型中的true/false不能与其他类型进行运算

注释

三种注释 //:单行、/** /:多行、/** */:javadoc文档注释

常量

整数可以用二进制(0bdddd),八进制(0ddd)、十进制(dddd)、十六进制(0Xdddd),Java中都是有符号下整数,没有unsigned int之类

浮点数科学计数法

小数(如1.4)默认类型是double,1.4f或1.4F的类型才是float

字符可以用Unicode 字符编码(Code Point)来表示。

运算符

算术运算 +、-、*、/、%

关系运算: !=>、>=、<、<=、==

条件表达式 ? 成立时返回值:失败时返回值

逻辑运算:运算结果是boolean值:true Or false, 与(&&) 、或(||) 、非(!)

位运算 :运算结果为位串(位向量)

与(&):全1为1,有0则0 ;或(|):全0为0,有1则1 ;非(~):反码形势表示 ;异或(^):相同为0,不同为1 ;左移(<<):最右补0 ;算术右移(>>):右移后,正数最高位补0,负数最高位补1 ;逻辑右移(>>>):右移后,最高位总是补0 ;递增、递减: i++,i-- ++i,--i

赋值

+=,=,-=, *=, /=, %=,&=, |=, ^=, <<=, >>=

类型转换

短->长是安全的,长->短必须强制转换

表达式中含不同类型,以长度最长的为准,其他的会进行类型提升(Promote)

3.2流程控制

结构化程序设计

包含三种语句

顺序:计算机结构决定语句是顺序执行的,正常情况下都是顺序执行的

分支:分支用来处理异常情况的

循环:执行最常用的语句

分支

类型 if、 if...else、 if...else if、 switch...case, switch可用于整数、字符、字符串等

default 分支的各种情况要满足不重复,不遗漏的原则

循环

类型 for、 while、 do...while, break/continue 配合标签可以实现goto的效果, goto可用于从多重循环是跳出来

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

有时我们在赋值时会遇到,所赋的值超过定义的范围,例如假如我们在定义为byte时就很容易超过其上限127;或者精度不对,例如利用float在定义时我们所赋的值会超过其精度,从而出错

代码调试中的问题和解决过程

易知 i =8,但是 j呢?8?还是8.8?

结果

出错了!为什么,难道是不能强制把int 型的 i 转化为double型 的 j?

经过老师的提示我改进了这个程序,终于可以运行出结果了

结果,j 的值竟然是0.0....

学习进度条

代码行数(新增/累积)

博客量(新增/累积)

学习时间(新增/累积)

重要成长

目标

3500行

28篇

300小时

第一周

300/300

1/1

20/20

第二周

500/500

2/2

40/40

第三周

第四周

 

参考资料

最新文章

  1. Gridview中几个Button的应用
  2. Java程序,猜大小游戏
  3. Linux中增加软路由的两种方法/删除的方法
  4. [物理学与PDEs]第4章 反应流体力学
  5. 解决div布局中第一个div的margin-top在浏览器中显示无效果问题。
  6. win7定时任务
  7. Android Studio使用教程图文详解
  8. destoon程序中qq号码,手机号,msn必选项实现方法
  9. linux如何关闭selinux?
  10. 使用Boost.PropertyTree处理XML、JSON和INI数据
  11. 怎样改动SVN的地址
  12. OpenStack安装与配置2
  13. ubuntu下update-alternatives命令的使用
  14. Selenium chrome配置不加载图片Python版
  15. python--爬虫--利用cookie登录网络教学中心刷评论
  16. 【有意思的BUG】反转的水印
  17. 2017-05-23 Android学习 The first day
  18. linux Centos7下安装python3及pip3
  19. BZOJ.4184.shallot(线段树分治 线性基)
  20. XML文件的DTD编写

热门文章

  1. 应用的启动视图 LauchView
  2. linux下使用线程锁互斥访问资源
  3. 简短总结一下C#里跨线程更新UI(转)
  4. [LintCode] Move Zeroes 移动零
  5. Struts2中上传图片案列
  6. #1045 - Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: NO)
  7. log4net 添加自定义日志到数据库
  8. 设置Oracle时间格式
  9. oracle结构与安全
  10. 杭电ACM 1998奇数阶魔方