第二周学习总结

20145113第二周学习总结

教材学习内容

基本类型:主要区分为整数、字节、浮点数、字符和布尔,由于跟C语言相似,就简单地回顾了下。

变量的基本命名:学到了一种新的命名法————驼峰命名法(ageOfStudent),小写字母开始,并在后面的每个单词的首字母大写。

条件运算符:条件?成立返回值:失败返回值。

流程控制:使用了if..else与switch语句编写了两个小程序,复习下。 ![](http://images2015.cnblogs.com/blog/886876/201603/886876-20160312105621538-1104518995.png) ![](http://images2015.cnblogs.com/blog/886876/201603/886876-20160312110011429-1921195732.png)

break:退出嵌套它的最内层循环,在书上看到一种新方法,可以在想退出到的地方设一个标签,然后break 标签,就可以退到你想要退出的模块。

数组:重新理解数组是对象,在不知道元素值前数组的定义可以int 数组名[][]=new int [个数][个数],同时学会了增强式的使用.初步实践打印了杨辉三角形.

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

教材课本的学习暂时没有遇到什么问题. ## 代码调试中的问题和解决过程

1.最开始想要敲代码的时候看完第三章发现怎么还没有输入的语法,但是在实现猜数字游戏时我想让用户自主输入,于是我接着看到下一章,懂得了如何输入,但是输入的语句有很多种,刚开始时没能分清楚它们的区别,当我定义a的类型是char时,我用的输入依然是scanner.nextInt(),于是出现了编译错误,后来查了知道scanner.nextInt()是接收一个整型字符,于是我改用了scanner.nextLine()但依然显示错误,后来继续找原因,发现scanner.nextLine()是读入字符串,于是我把a的类型改为String。

1.在猜数字的游戏时,想循环执行直到用户选择'N'才退出,但是实际结果是程序并没有判断用户是输入'Y'还是'N'

解决方案:百度,找到了其中出现的问题
scanner.nextInt() 接收一个整型字符,但"\n"留在了缓存区中,scanner.nextline()读入一行文本,会读入"\n"字符

如下代码
int n = Scanner.nextInt();
String s1 = Scanner.nextLine();
String s2 = Scanner.nextLine();
假设输入:
20
I
am xiaoming
在这种情况下,n的值为20,s1设置为空白字符,s2设置为I 因为nextInt()读入20,但并没有读入"\n",因此S1调用20所在行的剩余部分,而不是读取I。

于是我在用户读入猜的数据后输入了一行scanner.nextLine(),用于读取缓存区的回车。 ![](http://images2015.cnblogs.com/blog/886876/201603/886876-20160312110437085-1345765383.png) ## 其他(感悟、思考等,可选) 有时候程序部分运行的结果对了,但不一定程序对了,需要采用多种输入方式进行验证。在上面实现的猜数字游戏的时候,我把读取缓存中的回车符写在用户选择'Y'还是'N'后面,虽然第一遍执行如我所愿,但是在其他人指出我的错误后,我再重新尝试其他输入方式,就发现了其中出现的问题。 ##课后操作题 ![](http://images2015.cnblogs.com/blog/886876/201603/886876-20160312110634038-217319664.png) ![](http://images2015.cnblogs.com/blog/886876/201603/886876-20160312110645757-788892283.png) ## 学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000 25 100
第二周 300/400 2/3 4/9
原文地址:https://www.cnblogs.com/crystallin/p/5268163.html