20145325张梓靖 《Java程序设计》第2周学习总结

20145325张梓靖 《Java程序设计》第2周学习总结

教材学习内容总结

  • 整数 short 2字节,int 4字节,long 8字节
  • 字节 byte 1字节
  • 浮点数 float 4字节,double 8字节
  • 字符 char 2字节(包括字母、汉字)
  • 布尔 boolean 不用在意它的存储空间(只有true/false)
  • 注释 // 单行注释,/* */ 多行注释,/** */ javadoc文档注释
  • 变量命名 不以数字、一些特殊字符开头,不与关键词、保留字同名,可定义为 xxxYyyZzz
  • 常量定义 final加在定义类型之前,表示定义的该变量将不能改变其值,如 final int a=10;
  • 局部变量 在方法中声明的变量,使用前一定要初始化
  • 常用格式控制符号 用在 System.out.printf("",) 引号内, %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;if...else;if...else if;switch...case
  • 循环 for;while;do...while
  • break 可以离开当前switch,for;while;do...while的区块,并执行区块后下一个描述句
  • continue 使用于循环,只会略过之后描述句,回到循环区块开头进行下一次循环,并不是离开循环
  • 标签 当break back时,返回至back标签处;continue back同样有类似的用法,只不过标签只能设定在for之前

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

  • 问题 P69,count=0b01111111_11111111_11111111_11111111,为什么count+1后,结果为count=0b11111111_11111111_11111111_11111111
  • 解决过程 用IDEA编码运行

运行结果

结果确实是count=0b11111111_11111111_11111111_11111111,可是怎么理解、怎么算呢?

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

  • 问题 在求char的Unicode范围的时候,为什么结果并没有显示?

  • 解决过程 将由println求char的Unicode范围,换成了由print

又可以了,但为什么用println时显示不出结果?是因为对于char的Unicode范围来说,必须使用%h?

  • 问题 对于int来说,可以用十进制、十六进制、进制来表示,那么,如果是int number=0xC,输出为println时,perintln(number);,结果是输出的十六进制形式,还是十进制的形式?因为如果在printf中可以直接规定输出的形式,那么println呢?
  • 解决过程 用IDEA编码运行

结果

结果显示为十进制,那么可不可以用println输出十六进制、八进制呢?

其他(感悟、思考等,可选)

  • <<与>>4<<3 ,即结果为4*(2的3次方);如 4>>3 ,即结果为4/(2的3次方) (结果为整数)
  • >>与>>> ">>",右移后,补充的位同原最高为一致;">>>",右移后,补充的位都补“0”
  • ^ 755=5,即ABB=A

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 3500行 28篇 300小时
第一周 150/150 1/1 20/20
第二周 100/250 1/2 22/42
第三周
第四周

参考资料

posted @ 2016-03-13 16:41  20145325张梓靖  阅读(177)  评论(2编辑  收藏  举报