20145211 《Java程序设计》第2周学习总结——桃花依旧笑春风
教材学习内容总结
基本类型
- 整数 short 2字节,int 4字节,long 8字节
- 字节 byte 1字节 浮点数 float 4字节,double 8字节 字符 char 2字节(包括字母、汉字)
- 布尔boolean 不用在意它的存储空间(只有true/false)
命名规则
标识符:数字不可以开头,“-”和“$”也可以用来命名
包名:要全部小写
类名接口名:首字母大写,如果是多单词的情况,所有首字母大写
变量名函数名:第一个单词小写,第二个开始 首字母大写
常量:全大写
变量
在使用变量之前,一定要先初始化,否则后续的操作就不能对其进行重新赋值,否则编译时会报错。
局部变量 在方法中声明的变量,使用前一定要初始化
格式符号
常用格式控制符号: %d 十进制整型, %f 十进制浮点型, %c 字符型, %s 字符串型, %b 布尔型, %n 换行
常用忽略符号: 使用 \ ,如“\”表示“\”,“\n”表示换行,“\r”表示光标移至行首
进制与类型转换
不同进制常量表示:10进制表示 int number=12 ,16进制(0x)表示 int number=0xC ,8进制(0)表示 int number=014 ,2进制(0b)表示 int number=0b1100 。(都是有符号的整数)
默认类型:出现小数时,默认类型为 double ,要定义 float型,需在小数后加上“F”,如 float a=0.3F ;出现整数时,默认时使用不超过int类型长度,如果要用到long型的,则需要在整数后加“L”,如 long a=20000000000L
类型转换:进行运算时,如果表达式中包括不同类型数值,则以长度最长的类型为主;当操作数都是不大于int的整数,则自动全部提升为int型进行运算,如果非要换钟类型进行计算,则进行强制转换
算术运算符:+、-、*、/、% 比较、条件运算符:>、>=、<、<=、==、!=,C? A:B (C为条件,成立则为A,不成立则为B);逻辑运算:&&,||,!位运算符:&,|,^,~,<<,>>,>>>;递增、递减:i++,i--,++i,--i;赋值:=,+=, -=, *=, /=, %=,&=, |=, ^=, <<=, >>= (如“a+=b”,即“a=a+b”)
分支结构
- if...else条件式可以不加{},如果只有一条语句
- 循环for;while;do...while等,推荐用for,简单粗暴可以离开当前switch,for;while;do...while的区块,并执行区块后下一个描述句
continue可以跳过当前循环,直接执行下一次back,相当于c语言里的lable;我个人觉得最好不要用
教材学习中的问题和解决过程
说句实话,在这一章的学习中,我并没有遇到什么问题,因为这一章的内容和c语言的基础语法几乎如出一辙。而我好歹也是参加过ACM培训的人,虽然ACM没 有取得大的突破,但是这些知识我自信还是可以解决的。因此,我将分享几个我认为比较重要的知识点。
第一个是,一定要注意类型的转换,请注意,这里与C语言不同。如下图的代码编译是不通过的,但是c语言里将不会遇到编译和执行上的问题。左边是编译不通过的情况,右边则进行了强制格式转换,将2int型强制转换成byte型
第二个是,取模的的应用。虽然这和c语言里的并无二致,我还是要提一下。取模,左边小于右边,结果是左边,;左边等于右边是0,右边是1,也是0。简单运行如下图
第三个是,连接符“+”的运用。他可以输出一个表达式的形式,而不是最终的结果。看图很容易理解
代码调试中的问题和解决过程
- 课后操作题1
只要按照辗转相除的算法,简单编译就行了;有一点需要注意的是,我已开始想用c语言中int0和bool0都能做判断的bug,但是java并不支持,还是老老实实的好。
- 课后操作题2
实质就是三个for循环的嵌套,其他的不再赘述。
- 九九乘法表
这应该是课本这一章最复杂的问题了,需要注意的是格式的整齐美观,书上已经讲了。由于前面几条口诀乘法(3*3之前)的结果为个位数,与后面的十位数 相比差一位,为了左右能对整齐显得美观,故选择控制为%2d,使得不论结果是几位数,都使其占用2个字符的宽度。
-
其他(感悟、思考等,可选)
习惯了用一句诗来作为文章的标题,无论是在新浪博客上写的文章,还是在博客园写的java技术文章。这一次,我想用“桃花依旧笑春风”。 学习c语言的日子仿佛如在昨日,虽然教语言的老师以不同,但是那些曾经的知识烙印依旧还在。所以不管知识如何变化,那些构建知识的体系都大同小异,只要学会举一反三,触类旁通,就可以较为深刻的理解新的知识体系。 我自己在写的一篇文章中写道,世间最动情的莫过于“人面不知何处去,桃花依旧笑春风”,你是否也这样想呢?
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 100/100 | 2/2 | 15/15 | 学会搭建Java环境,学会写一些简单程序,掌握一些小技巧 |
第二周 | 100/200 | 2/2 | 22/37 | 学会使用IDEA |
第三周 | ||||
第四周 |
参考资料
参考资料
20145211 《Java程序设计》第2周学习总结——桃花依旧笑春风的更多相关文章
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
随机推荐
- 博客搬到blog.csgrandeur.com
博客已搬到blog.csgrandeur.com. cnblogs停止更新. wordpress太臃肿,难刷. hexo对windows似乎不太友好,迁移的时候建了十几层文件夹,导致目录过深无法移动无 ...
- quick cocos map使用
'''lua local MainScene = class("MainScene", function() return display.newScene("MainS ...
- TYVJ 1014 乘法游戏
做题记录:2016-08-15 16:10:14 背景 太原成成中学第2次模拟赛 第四道 描述 乘法游戏是在一行牌上进行的.每一张牌包括了一个正整数.在每一个移动中,玩家拿出一张牌,得分是用它的数字乘 ...
- 【BZOJ】3319: 黑白树(并查集+特殊的技巧/-树链剖分+线段树)
http://www.lydsy.com/JudgeOnline/problem.php?id=3319 以为是模板题就复习了下hld............................. 然后n ...
- xfce4桌面自动整理脚本
转自http://blog.chinaunix.net/uid-22101074-id-91073.html (有修改) xfce4桌面没有自动排列的功能,如果文件多了,超出了桌面的范围,就不好找了, ...
- 深入理解JVM—性能监控工具
(转自:http://yhjhappy234.blog.163.com/blog/static/31632832201222691738865/) 我们知道,在JVM编译期和加载器,甚至运行期已经做了 ...
- The constructor BASE64Encoder() is not accessible due to restriction on required
在Eclipse中编写Java代码时,用到了BASE64Decoder,import sun.misc.BASE64Decoder;可是Eclipse提示: Access restriction : ...
- opengl中层次建模的实现
1.显示列表的创建 例如: glNewList(listID,listMode); glutSolidCube(2.0); ...... glEndlist(); 可以创建一个listID显示列表,l ...
- Html 5+
audio Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件.通过plus.audio获取音频管理对象. http://www.ht ...
- 如何进行SCCM中客户端记录信息维护
SCCM 部署完毕之后,不久我们就会发现客户端代理状态,因为重装系统,非正常的退域,长时间不开机,导致客户端状态有不可用的,有过期的,重复的记录很多.当然我们可以手动的快速删除重复的记录,那么怎么能做 ...