JAVA API-----String类和StringBuffer类
String類和StringBuffer類主要用來處理字符串,這兩個類提供了很多字符串的使用處理方法。String類是不可變類,表示對象所包含的字符串類不能改變。StringBuffer類是可變類,其對象所包含的字符串內容可以被添加或修改。
關于這兩個類處理字符串的常用方法請參考:http://www.runoob.com/java/java-string.html ? ?
http://www.runoob.com/java/java-stringbuffer.html
下面主要介紹:equals和==在字符串和非字符串使用方面的區別
class Test{int x=1; }public class EqualTest{public static void main(String args[]){String a1,a2,a3="abc",a4="abc";a1=new String("abc");a2=new String("abc");System.out.println("a1.equals(a2): "+(a1.equals(a2)));System.out.println("a1==a2: "+(a1==a2));System.out.println("a1.equals(a3): "+(a1.equals(a3)));System.out.println("a1==a3: "+(a1==a3));System.out.println("a3.equals(a4): "+(a3.equals(a4)));System.out.println("a3==a4: "+(a3==a4));System.out.println("----------------------------");Test one=new Test();Test two=new Test();System.out.println("one.equals(two): "+(one.equals(two)));System.out.println("one==two: "+(one==two));one=two;System.out.println("賦值后:");System.out.println("one.equals(two): "+(one.equals(two)));System.out.println("one==two: "+(one==two));} }1. ==可以用來比較基本類型和引用類型,判斷內容和內存地址
2. equals只能用來比較引用類型,它只判斷內容。
java中的數據類型,可分為兩類:?
1.基本數據類型,也稱原始數據類型。byte,short,char,int,long,float,double,boolean?
? 他們之間的比較,應用雙等號(==),比較的是他們的值。?
2.復合數據類型(類)?
? 當他們用(==)進行比較的時候,比較的是他們在內存中的存放地址,
? 所以,除非是同一個new出來的對象,他們的比較后的結果為true,否則比較后結果為false。
?
字符串緩沖池:程序在運行的時候會創建一個字符串緩沖池。
當使用 String a3 = "abc"; 這樣的表達是創建字符串的時候,程序首先會在這個String緩沖池中尋找相同值的對象
在String a3 = "abc";中,a3先被放到了池中。所以在a4被創建的時候,程序找到了具有相同值的 a4,并將a4引用a3所引用的對象"abc"。
使用了 new 操作符,他明白的告訴程序:"我要一個新的!不要舊的!"于是一個新的"abc"Sting對象被創建在內存中。他們的值相同,但是位置不同。
?
轉載于:https://www.cnblogs.com/scf141592/p/5748223.html
總結
以上是生活随笔為你收集整理的JAVA API-----String类和StringBuffer类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SOAPUI使用
- 下一篇: Spring源码剖析——Bean的配置与