20165101刘天野 2017-2018-2 《Java程序设计》第2周学习总结


教材学习内容总结

基本数据类型

逻辑类型:boolean

整型:byte、short、int、long

浮点型:float、double

总结Java的数据类型与C语言的不同:

  • Java新增数据类型boolean以取代C语言中非零为假的规定
  • Java中对数组的操作与C语言不同,Java是先创建一个数组的“管理者”,再根据这个“管理者”对数组进行操作,这个管理者的作用与指针类似,但有本质的不同。
  • Java会将浮点型的立即数默认存为double类型,所以给float类型变量赋值时需要强制类型转换,或在立即数后加F/f
  • Java申请数组空间时可以直接动态申请,不需要像C语言一样使用malloc,calloc函数
  • Java的数组中默认存在.length,代表数组的长度
  • Java使用Unicode编码,标识符可以有中文字符

运算符、表达式和语句

总结Java的表达式与C语言的不同:

  • Java中的break可以跳多重循环,方法是在你想跳出的循环的前面做一个标记,在内层循环中写break 标记 即可。

      OUT:
    for(;;)
    for(;;)
    for(;;)
    if(ture)
    break OUT;
  • Java中的for语句存在特殊的简化用法,即foreach语句

例如:

for(int i : a)
System.out.print(i + ",");

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

  • 问题1:在Windows下敲的代码(代码中存在中文),在Linux环境下会出现编码方式不同的问题(Windows下默认中文的编码是GBK,Linux下是UTF-8),导致文件无法编译。

  • 解决方案一:编译文件时尝试使用以下命令

      javac -encoding GBK <filename>
  • 解决方案二:使用以下命令进行转码

      iconv -f GBK -t UTF-8 filename.java > newfilename.java

    参考文件:linux下使用iconv命令转换UTF-8编码为gbk编码

  • 问题2:如何批量编译文件

  • 解决方案:使用通配符{1..9}

代码托管

statistics.sh脚本的运行结果截图

最新文章

  1. oracle中批量生成字段类型的脚本
  2. msqlserver 千万级别单表数据去掉重复记录使用临时表
  3. Coding Kata - 挑战你的“底线”
  4. 电脑网线/水晶头的连接方法(A类,B类)
  5. 4-Highcharts 3D图之3D普通饼图
  6. java的真相
  7. asp.net实现UNIX 时间戳
  8. 多线程编程-- part 3 多线程同步-&gt;synchronized关键字
  9. Android Weekly Notes Issue #258
  10. Web.config 自动替换值
  11. 注册WinEdt 7
  12. ch1-使用路由-静态资源-404页面-ejs模板
  13. 织梦默认编辑器 按下回车生成br标签改为生成p标签
  14. SignalR在Asp.NetCore中的使用
  15. 强大而灵活的的Html解析器——Html Agility Pack
  16. with的上下文管理
  17. 结对编程--四则运算(Java)萧英杰 夏浚杰
  18. 关于Unity中Cg的基本语法和使用
  19. Gitlab+Jenkins学习之路(二)之gitlab部署
  20. Android studio 中NameValuePair跟BasicNameValuePair 不能正常导包问题

热门文章

  1. mvc Ajax 跨域请求
  2. WCF实现上传图片功能
  3. Cocos2d-x教程(35)-三维拾取Ray-AABB碰撞检測算法
  4. Httpclient 实现带参文件上传
  5. poj 2553 The Bottom of a Graph(强连通、缩点、出入度)
  6. [译]GLUT教程 - 笔划字体
  7. HTML DOM节点的增删改查
  8. Linux mail发送邮件
  9. 探究css中各种情况下的元素的垂直和水平居中的问题(面试题)
  10. python tensorflow 学习