20165230 2017-2018-2 《Java程序设计》第2周学习总结

教材学习内容总结

  • 本周学习了JAVA中的数据类型、数组、运算符、表达式和语句,与C语言很类似,二者也有区别。
  • 标识符中的字母分大小写
  • JAVA没有无符号位的byte,short,int,long
  • 浮点数编译程序默认为double型,声明为float型变量后面必须加F。
  • JAVA中的char型数据一定是无符号的,而且不允许用unsigned来声明char类型
  • 在声明数组时,不能在方括号内指定数组元素个数
  • 数组的索引从0开始

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

  • 问题1:为什么双精度123456789.123456789强制转换成单精度时为1.23456792E8,而不是12.3456792E8
  • 问题1解决方案:f=1.23456792E8相当于是将123456789.123456789的小数点前移变成1.2345678912345678910^8,去掉小数的一半就变成1.2345678910^8了,

    • 若想控制误差,可以用strictfp。使用 strictfp关键字声明一个方法时,该方法中所有的float和double表达式都严格遵守FP-strict的限制,符合IEEE-754规范。

      当对一个类或接口使用 strictfp 关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算。严格约束意味着所有表达式的结果都必须是 IEEE 754 算法对操作数预期的结果,以单精度和双精度格式表示。

      如果你想让你的浮点运算更加精确,而且不会因为不同的硬件平台所执行的结果不一致的话,可以用关键字strictfp.
  • 问题2:P28页中提到如果想输出char型数组的引用,必须让数组a和字符串做并置运算,什么是并置运算?
  • 问题2解决方案:在网上查询得到以下解答:

    并置“&” 就是用来进行位和位矢量的连接运算

    所谓位和位矢量的连接运算是指将并置操作符右边的内容接在左边的内容之后以形成一个新的位矢量

参考:并置语句

  • 问题3:不理解Example3_7.java中求100以内的素数的方法
  • 问题3解决方案:通过自己调试代码与询问同学理解了代码,若要求100以内的素数,有一种方法为从1开始的数与根号100进行取模运算,若所得余数不为0,则是素数。此代码类似,只是与100/2进行取模运算,再依次求余。

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

  • 问题1:启动乌班图系统时显示出现内部错误
  • 问题1解决方案:通过在网上查找,找到解决方案为在终端输入sudo gedit /etc/default/apport将enabled设置为0。

参考Ubuntu16.04 系统错误报告屏蔽尝试修改

  • 问题3:在调试example2_5时,反复检查多次又出现以下错误,显示找不到符号

    .

  • 问题3解决方案:通过再次检查代码发现是把Scanner scanner = new Scanner(System.in);中的第二个scanner少输入了一个c。
  • 问题4:在调试example3_4时,输入209 显示209既是二等奖又是一等奖

  • 问题4解决方案:没有在是二等奖后的语句加break;
  • 问题5:在调试example3_9时,错误把System.out.println中的System首字母大写,显示错误

  • 问题5解决方案:将system改正为System

代码托管

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

  • 在本周的学习中,代码量比上周增加了不少,对代码的理解也在加深,同时,敲代码的错误率在减少,平时敲代码时注意了大小写,空格等细节。
  • 通过自学视频与教材,类比C语言对JAVA中的基本数据类型、语句有了了解,过程中遇到的问题都通过网络查询以及询问同学一一解决。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第二周 426/426 3/3 12/12

参考资料

20165230 2017-2018-2 《Java程序设计》第2周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  10. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. 关于MYCAT 读写分离,与只读事务的问题.

    习惯性为了复用mysql连接,喜欢加上@Transactional(readOnly = true) 只读事务,很多零碎的查询下,速度会快一些,也环保一些. 最近用mycat做了读写分离,其中一个查询 ...

  2. 企业内部DNS跨国配置案例

    背景介绍:总公司与北京分公司均由总公司进行统一管理.总公司的主从DNS担任解析总公司服务器与北京分公司的服务器解析任务.总公司DNS委派其他两个公司管理自己域下的服务器解析任务.要求任何一个节点都能解 ...

  3. java复习

    局部变量的作用域只在方法内部有效,在方法外无效 用类型作为形参传递会改变实参的值,但是String是特殊的引用类型,作为形参传递不会影响实参的值. HashMap非线程安全,在多个线程访问Hashta ...

  4. Django2.0文档

    第四章 模板 1.标签 (1)if/else {% if %} 标签检查(evaluate)一个变量,如果这个变量为真(即,变量存在,非空,不是布尔值假),系统会显示在 {% if %} 和 {% e ...

  5. 【前端】Vue2全家桶案例《看漫画》之六、图片阅读页

    转载请注明出处:http://www.cnblogs.com/shamoyuu/p/vue_vux_app_6.html 项目github地址:https://github.com/shamoyuu/ ...

  6. 3.3 与Cache相关的PCI总线事务

    PCI总线规范定义了一系列与Cache相关的总线事务,以提高PCI设备与主存储器进行数据交换的效率,即DMA读写的效率.当PCI设备使用DMA方式向存储器进行读写操作时,一定需要经过HOST主桥,而H ...

  7. 10种软件开发中 over-engineering 的错误套路

    别把「不要过度使用 Generic」误解成「不用 Generic」,也别把「不要写一些不必要的 Wrapper」误解成「不写任何 Wrapper」.我只是在讲 over-engineering 这个事 ...

  8. Form提交表单页面不跳转

    1.设计源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. ...

  9. 图解MBR分区无损转换GPT分区+UEFI引导安装WIN8.1

    确定你的主板支持UEFI引导.1,前期准备,WIN8.1原版系统一份(坛子里很多,自己下载个),U盘2个其中大于4G一个(最好 准备两个U盘)2,大家都知道WIN8系统只支持GPT分区,传统的MBR分 ...

  10. 利用ICSharpCode.SharpZipLib进行压缩

    #ZipLib is a Zip, GZip, Tar and BZip2 library written entirely in C# for the .NET platform. It is im ...