7/15android培训第5天

来源:互联网 发布:linux命令行测试网速 编辑:程序博客网 时间:2024/05/18 00:50



  这么快就过完五天了,剩下的周末基本上只有自习。所以一周就学这么东西了。今天去拍了个集体照,个人照,晚上老师还弄了个小组,小组名,logo。口号什么的,其实我的感觉还是没什么的必要,不过在这点时间了稍微放松下。好吧 ,其实这也是相当无聊的一天。

今天做了一次小考,有一道编程题不会,还做错了一个填空题,跟一个推断题。那先说这几个题吧。最后再说今天叫的知识。

填空题:char类型的范围() 

我当时是粗心了以为是byte就直接写上了(-128----127),但其实要我没粗心的话估计也会写错,因为我好像没记得char原来是只有正数的! 所以char跟short之间的转型后出现问题的(原因是什么 自己好好想想)。那正确答案是(0-----2^15-1)

       推断题:

public class Test{     public static void main(String args[]){          char ch = '8' ; int r = 10 ;          switch(ch+1){              case '7': r=r+3;              case '8': r=r+5;              case '9': r=r+6;break;              defaule:r = r+8;}}}
这道题我本来的答案是:18 。 。 。  

那接下来要好好分析下正确的答案了。

switch()中的ch+1;执行后返回的应该是一个int的结果,至于结果是多少呢。那要先清楚字符‘8’对应的数值。(刚百度具体的char对应大全)Char("0") 为0的字符(只是放了一部分)
Char("48") 0  Char("49") 1  Char("50") 2  Char("51") 3   Char("52") 4 Char("53") 5  Char("54") 6   Char("55") 7
Char("56") 8  Char("57") 9  Char("97") a Char("98") b
那最后执行的结果57没疑问了吧 !那么switch中的(int49)跟case(char‘9’)能不能匹配到的?答案是能的!二者在比较的时候把char“9”先转换成int形在进行比较。(有疑问的可以看我之前的一篇博客:android培训第3天)那‘9’正好对应的是57,所以能够匹配到。所以最后的答案是:16  (其实这知识点我也是会的,就是做题的时候太自信了  粗心)

    程序题:打印1---1000的所有完数,完数就是该数是其所有因子之和但不包含其本身。例如:6=1+2+4

    我当时想的有点复杂了,最后也还是没有做出来。

    然后看了下别人写的才知道,mdzz!怎么自己这么傻!

    那现在就在这直接再手鲁一次代码了

public class Test {public static void main(String[] args) {for(int i=2;i<=1000;i++){int temp=1;for(int j=2;j<i;j++){if(i%j==0){temp+=j;}}if(temp==i){System.out.println(i);}}}}
还有最后!其实今天就说了个方法,说了重载这个性质,记住不能不能用返回值来重载,只能用形参表的不同。

好啦!收工睡觉!十二点多了 。。。。。明天上课估计又要犯困了。。。。。。。



0 0
原创粉丝点击