​ 更正一个以前的错误观点:在Java中,变量名必须是一个以字母开头并由数字构成的序列,但是这个字母不单单包括英文中的大小写52个字母,实际上几乎是所有Unicode字符都可以拿来用,比如π、µ、Á等特殊字母当然包括中文,这一点和C/C++有很大不同。

​ Java10开始支持var关键字,使用var可以让编译器自动推断变量类型。

​ 常量的名字习惯上是全大写的。Static final称为类常量,定义在方法的外部。

​ String是不可变的,而StringBuilder可以动态的改变一个String对象的值,在构造完这个对象后调用toString方法即可,至于StringBuffer它与StringBuilder的区别在于它允许多线程的添加或者删除字符,如果所有的字符串操作都在单个线程中执行应该使用StringBuilder。

文件IO:
1
2
Scanner in = new Scanner(Path.of("myfile.txt"), StandardCharsets.UTF_8);
PrintWriter out = new PrintWriter("otherfile.txt",StandardCharsets.UTF_8);