一切皆对象,对象通过名字来引用。
基本类型存储在堆栈中,非基本类型存储在堆中。
基本类型都有其非基本类型与之对应,它们之间可相互转换。
变量在使用前必须先初始化,字符串可以使用空串来初始化,字符却不能使用空字符。
数组未被初始化,如果它的元素为基本类型,那么里面的内容初始化为基本类型的初始值(如0,或者0.0);如果类型为非基本类型,那么里面的内容初始化为null。
关于字符串比较:
char类型是16位的,它不能满足所有的unicode字符。代码点指编码表中的某个字符对应的代码值,如U+0041就是字母A的代码点。
utf-16采用变长的编码表示所有unicode代码点。在unicode的基本多语言级别中,每个字符用16位表示,被成为代码单元。在unicode其他的附加级别中,每个字符用一对连续的代码单元进行编码(第一个代码单元:u+d800 - u+dbff,第二个代码单元:u+dc00 - u+dfff),如u+1d56b,使用2个代码单元u+d835和u+dd6b编码。
字符串的length方法返回utf-16编码表示的字符串所需要的代码单元数量,codePointCount(0, foobar.length())返回代码点数。
在函数内部,代码块的变量不能和代码块外的变量重名。操作符=,==,!=能用于对象,==和!=比较的是对象的引用,对象的equals方法默认也是比较的引用。操作符+和+=可以用于字符串。
函数数组参数可以使用[]和...,但...只能作为函数的最后一个参数。
时间: 2024-11-08 21:24:38