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
-
问题2:如何批量编译文件
-
解决方案:使用通配符{1..9}
代码托管
statistics.sh脚本的运行结果截图