标签:程序 9.png inter can logs 通过 eth system word
== (等于) !=(不等于) <(小于) >(大于)<=(小于等于)>=(大于等于)
! (非)&&(与) ||(或)
(name1 == name2)
是可以的,但是它判断的是它们引用的是否是同一个字符串对象,而(name1.equals(name2))
是判断字符串对象是否含有相同的字符,这是不一样的。迭代器主要是用来处理某个集合,每一个迭代器对象都有一个可以返回布尔值的 hasNext
方法
问题1解决方案:课本对于它们的用途都进行了一些解释。
迭代器是一个对象,可以用来处理一组相关的元素。
ArrayList类是使用一个称为数组的程序设计构建来管理列表。
在网上我查找了一下数组到底是什么,这是一篇比较详细的资料1
ArrayList类<元素>是用来管理该元素类型对象的列表,一点创建了这个对象,这个元素的类型就确定了。
我不知道这是为什么,于是我问了学长。
问题1解决方案:index.charAt(count)
得到的返回值是一个char型的数值,并不是我认为的int型,所以一直得不到正确的结果。下面是一些关于char型的知识点
1、JAVA中,char占2字节,16位。可在存放汉字
2、char赋值
char a=‘a‘; //任意单个字符,加单引号。
char a=‘中‘;//任意单个中文字,加单引号。
char a=111;//整数。0~65535。十进制、八进制、十六进制均可。输出字符编码表中对应的字符。
注:只能放单个字符。
3、char运算
char类型是可以运算的因为char在ASCII等字符编码表中有对应的数值。
在JAVA中,对char类型字符运行时,直接当做ASCII表对应的整数来对待。
示例:
char m=‘a‘; ——a。
char m=‘a‘+‘b‘; ——?。 //char类型相加,提升为int类型,输出对应的字符。注,在CMD.exe用输出结果是问题?,不同的编码输出显示不一样。Eclipse中须改成UTF-8。
int m=‘a‘+‘b‘; ——195。//195没有超出int范围,直接输出195。
char m=‘a‘+b; ——报错。//因为b是一个赋值的变量。
char m=197; ——?。 //输出字符编码表中对应的字符。
char m=‘197; ——报错。//因为有单引号,表示是字符,只允许放单个字符。
char m=‘a‘+1; ——b。//提升为int,计算结果98对应的字符是b。
char m=‘中‘+‘国‘; ——42282。
char m=‘中‘+‘国‘+‘国‘+‘国‘; ——报错。int转char有损失。因为结果已经超出char类型的范围。
int m=‘中‘+‘国‘+‘国‘+‘国‘; ——86820
char m=‘中‘+1; ——丮。//1是int,结果提升为int,输出对应的字符。
char m=‘中‘+"国"; ——报错。String无法转换为char。
System.out.println(‘中‘+"国"); ——中国。//没有变量附值的过程。String与任何字符用“+”相连,转换为String。
char类型对应的是ASCII码字符集,所以要把它变成一个整型值才能完成。
我试了一种方法:
这种是将A所存放的char型在ASCII码表中对应的值变成整型值,而不是直接把这个数字变成整型值,这样得到的结果和原来是一样的
于是我尝试了另一种方法,这里是参考2
这样就得到了:
问题2:在编写代码时出现了该输入时程序却自动结束了的情况
问题2解决方案:这个问题我去问了一下老师,老师点出NextInt()输入值之后还有一个回车符,而下一个NextLine就直接读了那个回车符,所以没有输入就结束了,这时才突然想起来老师之前提到过这件事因为之前没遇到过,所以原谅我已经忘记了。
最简单直接的办法就是再加一行another = scan.nextLine();
,这样上一个语句就读走了那个回车符,接下来就是用户输入。
问题三的解决方案:因为在Coin中他的flip方法是void型的,所以一直找不准相应的类型的数据和他匹配,于是自己又定义了一个Coin对象,然后再useisHead()
方法,但是这样判断两者的值一直都是不相等的,可实际上有出现正面朝上的情况,后来发现if后面的()中不一定要有运算符。
错题1及原因,理解情况
The relationship between a class and an object is best described as
A .classes are instances of objects
B .objects are instances of classes
C .objects and classes are the same thing
D .classes are programs while objects are variables
E .objects are the instance data of classes
正确答案:D
解析:D是指是指对象是类的实例数据,B是对象是类的实例,主要是理解错了句子的意思
错题2及原因,理解情况
What happens if you declare a class constructor to have a void return type?
A .You‘ll likely receive a syntax error
B .The program will compile with a warning, but you‘ll get a runtime error
C .There‘s nothing wrong with declaring a constructor to be void
D .The class‘ default constructor will be used instead of the one you‘re declaring
E .None of the above
答案:D
解析:这道题其实选择是对的,老师后来修改了答案。使用了void返回值类型,这个方法将会被转为常规方法,不再是构造函数,这时,这个类会有一个默认的构造函数。所以不会出现错误。
错题3及原因,理解情况
Consider a method defined with the header: public void doublefoo(double x). Which of the following method calls is legal?
A .doublefoo(0);
B .doublefoo(0.555);
C .doublefoo(0.1 + 0.2);
D .doublefoo(0.1, 0.2);
E .all of the above are legal except for D
正确答案: E 你的答案: B
解析:看到这道题的时候我觉得A是一个整型值,所以不是很正确选项,以为题目出了bug,后来一看解析才恍然大悟:在A的情况下,值0(整数)被扩展为double。
错题4及原因,理解情况
Java methods can return more than one item if they are modified with the reserved word continue, as in public continue int foo( ) { ... }
(Java方法可以返回不止一个条目,如果它们被保留的单词继续修改,就像在公共继续int foo()中一样)
解析:看着这句话,一直都没怎么理解,这是有道翻译惹的祸,正确的理解应该是“如果使用保留字continue进行修改,Java方法可以返回多个项,如在public continue int foo(){…}”。所有的Java方法都返回一个对象,不论是一个原始数据类型,还是void,保留字continue用于退出循环的其余部分并再次测试该条件,所以continue并不会修改什么,而只是不断重复。
错题5及原因,理解情况
Inheritance through an extended (derived) class supports which of the following concepts?:通过扩展(派生的)类的继承支持下列概念中的哪一种?
A .interfaces
B .modulary
C .information hiding
D .code reuse
E .correctness
正确答案: D 你的答案: A
解析:代码重用是通过延长一个类并继承它,新类不必重新实现任何继承的方法或实例数据。
错题6及原因,理解情况
Interface classes cannot be extended but classes that implement interfaces can be extended.:
接口类不能被扩展,但是实现接口的类可以扩展。
A .true
B .false
正确答案: B 你的答案: A
解析:任何类都可以被扩展,无论它是一个接口,还是实现一个接口,或者两者都没有。唯一的例外是,如果该类被显式地用“final”这个词进行修饰,在这种情况下,它不能被扩展。
条件语句和循环语句在编程中出现的实在是很多,上周的学习因为看不懂这些类型的语句而遇到了不少的麻烦,所以能够掌握五六章的内容是很重要的。随着学习的深入,在做课后题时所花费的精力越多,也可以说是脑子要懂的越多。去看别人编写的代码也会发现完成同样的操作,方法其实有很多,所以看看别人编写的代码也是有一定好处的,可以看到自己的不足,吸收别人好的想法。
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 127/127 | 1/1 | 25/25 | |
第二周 | 278/405 | 1/2 | 20/45 | |
第三周 | 442/847 | 1/3 | 20/65 | |
第四周 | 1063/1910 | 2/5 | 30/95 | |
第五周 | 840/2750 | 1/6 | 27/122 |
计划学习时间:30小时
实际学习时间:27小时
20172310 2017-2018-2 《程序设计与数据结构》第五周学习总结
标签:程序 9.png inter can logs 通过 eth system word
原文地址:https://www.cnblogs.com/Qiuxia2017/p/8746885.html