今日复习心德
由于 String 在 Java 中是不可变的,因此每当我们执行字符串拼接操作时,它都会生成一个新的 String 并丢弃旧的 String 以进行垃圾收集
StringBuilder是可变的动态的
在 Java 1.4 之前,StringBuffer 是字符串操作的唯一选择。但是,它的一个缺点是所有公共方法都是同步的。 StringBuffer 提供线程安全性,但以性能为代价。
在大多数情况下,我们不会在多线程环境中使用 String。所以 Java 1.5 引入了一个新类 StringBuilder,除了线程安全和同步之外,它与 StringBuffer 类似
- String 是不可变的,而 StringBuffer 和 StringBuilder 是可变类。
- StringBuffer 是线程安全和同步的,而 StringBuilder 不是。这就是 StringBuilder 比 StringBuffer 快的原因
- 
System.lineSeparator()具体含义
- 
在UNIX系统下,System.lineSeparator()方法返回 "\n" 在Windows系统下,System.lineSeparator()方法返回 "\r\n" 
- 其实使用这个就实现了程序的跨平台运行,System.lineSeparator()方法会根据当前的系统返回对应的行分隔符。从而避免了你编写的程序在windows系统上可以运行,linux/unix系统上无法运行的情况。
安位运算符与逻辑运算符的区别是 “”第一个判断位为假也会继续判断第二个“” 逻辑与“第一个为假直接结束”
安位运算符 & 安位与, | 安位或 ,~ 安位非,^安位异或
逻辑与(&&),逻辑或(||)
取[50,100)之间的随机数:
[50,100) == [0,50)+50                             取值范围:  包括左,不包括右
int intValue = random.nextInt(50)+50;
取[13,57]之间的随机数:
[13,57] == [0,45) + 13
int intValue = random.nextInt(45)+13;
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号