Java中的变量

  • 命名规范

Java的变量以字母开头,由字母和数字组成,大小写敏感,变量名长度基本无限制

  • 变量初始化

Java允许将声明放在代码的任何地方

  • 常量

final声明的变量为常量,表示只能被赋值一次

希望某常量在类中多个方法使用,这种常量称为类常量,使用关键字static final设置一个类常量

  • 除法

整数除以0,会产生一个异常

浮点数除以0,会得到一个无穷大或者NaN结果

  • 移位运算

>>>运算符用0填充高位,>>运算符用符号位填充高位,不存在<<<运算符


  • String为不可变字符串

不能修改字符串中的字符,但可通过以下方法拼接替换:

String greeting = "Hello";
greeting = greeting.substring(0,3)+"p!";    //greeting = "Help!"

虽然不能修改字符串内容,但可让greeting引用另一个字符串。

Java的不可变字符串有一个优点:编译器可让字符串共享。各种公共字符串存放在公共的存储池,如果复制一个字符串变量,原始与复制的都共享相同的字符串,即指向相同位置。

字符串的equals和==

equals比较的是字符串的内容

==比较的是字符串是否存放在相同位置

因此不要用==比较字符串是否相等!

实际上只有字符串常量是共享的,而+或substring产生的不是共享的

比较两字符串是否相等而不区分大小写使用:xx.equalsIgnoreCase("xx")

构建字符串

由于String是不可变字符串,因此由较短字符串构建字符串,每次连接字符串,都会构建一个新的String,浪费空间,使用StringBuffer可以解决这个问题。

StringBuilder sb = new StringBuilder();
sb.append('a');
sb.append("hello");
  • 代码点与代码单元

由于char不足以表示所有字符,因此使用1至2个代码单元表示一个代码点。

你可能感兴趣的:(Java中的变量)