希望以写博客的形式记录自己的本次学习。
第三章
(1) P33
Double.POSITIVE_INFINITY、Double.NEGATIVE_INFINITY 和 Double.NaN 表式溢出和出错情况的特殊值。
(2) P34
Unicode转义字符(\u0000 到 \uffff)在编译时被转化为对应的符号;特别注意在注释中出现的字符,也会在编译时被进行对应的转化,\u 后面没跟四个十六进制数会报错。
(3) P35
数值型不能与布尔型进行转换(但 C++ 可以)。
(4) P37
Java 中并不明确区分变量的声明和定义(但 C++ 区分)。
(5) P41
Java 中默许的类型转换:
强制类型转换可能会改变原有的数值(还有可能编译时会出错)。
(6) P43 ?
位运算符(虽说在日常中并不常使用,但在力扣上我经常见到使用位运算优化的解题算法。)
(7) P46
String中的静态方法:jion。 可以将多个字符串连接为用分隔符形成的字符串。
eg:String.join(“a”, "ab’’, “abc”); //结果为:a / ab / abc
(8) P47
Java 中字符串就是字符串,已经创建就不能改变。在C、C++ 中字符串可以看做一个字符数组(字符串是可以被修改的),但Java 中是不可以的(Java 的字符串更类似于 char* 指针)。
(9) P48
C++ 是可以用 == 运算符判断两个字符串是否相等的,但 Java 是不可以的,只能判断两个字符串的“地址”是否相等,采用 equals 方法进行判断。
字符串 “” 表示该字符串长度为0,内容为空;而 null 表示某个变量不与任何变量有关联。
(10) P49 ?
码点与代码单元(这一知识点我觉着比较冷门,希望自己有个印象吧)
(11) P58
Java 中的格式化输出类似于 C(C++ 是使用的专门的函数或运算符)。这里对Java的格式化输出介绍的较为完善,我认为应该仔细的阅读一遍,以求在某个时间点遇到时,有印象(会使用)。
特别指出一下:有专门针对时间与日期的格式化的输出。
? ”使用 s 转换符格式化任意的对象。对于任意实现 Formattable 接口的对象都将调用 formatTo 方法;否则将调用 toString 方法,它可以将对象转换为字符串。“这是P58的原话。认为这是一个有趣的知识点。
(12) P63
在Java 中不允许块级作用域外如果有和作用域内完全相同的变量或对象(C++是允许的)。
(13) P75
使用带标签的 break 语句可以跳出多重循环和块作用域。(详细细节略)
(14) P79
声明数组时,大小不一定是 常量 。
初始化匿名数组:
type [ ] {vale,value, value, value····}
(15) P79
for-each 循环:实现一个数据集合(数组和实现 Iterator 类的集合)的全遍历(类似于 Iterator 类)。格式:
for( variable : collection ) statements
(19) P81 ?
Java 数组与 C++ 数组的简单辨析:二者在堆栈上有很大不同,但基本上与分配在堆上的数组指针一样。
int[ ] a = new int[10]; //Java
int a [ 10]; //C++ 这两者有很大的区别
int* a = new int[10]; //但这个就和 Java 类似
但Java 数组名不能通过加1得到数组的下一个元素。
(20) P84
Arrays 类方法小集合:
String toString ( type[] a)
type copyOf ( type[] a, int length )
type copyRange ( type[] a, int start, int end)
拷贝数组:System.arraycopy( src, indexSrc, target, indexTarget, size) 方法
void sort ( type[] a )
int binarySearch ( type[] a, type v)
int binarySearch ( type[] a, int start, int end, type v)
void fill ( type[] a, type v)
boolean equals (type[] a, type[] b)
(21) P88
多维数组和不规则数组:
在 Java 中多维数组可以理解为”数组的数组“(二维数组理解为一维数组的数组,三维数组理解为二维数组的数组等等)。
不能用常规的方法对不规则数组进行初始化。
读完第三章后,最大的收获是对于 C++ 和 Java 区别的疑惑没有了一些。以及对之前所学做了一些小复习吧。
这样记笔记太耗时,而且效率低。不能起到很好的作用,接下来要好好地探索一下这个记笔记的方法