【Java】StringBuilder类、包装类
生活随笔
收集整理的這篇文章主要介紹了
【Java】StringBuilder类、包装类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 StringBuilder類
1.1 String的劣勢
String類中字符串是常量,創建后不能更改
//底層是final修飾的數組 private final byte[] value;字符串相加,內存中會存在多個字符串,占用空間多,效率低下
1.2 StringBuilder的優勢
StringBuilder是字符串緩沖區,可以提高操作效率,數組長度可變,初始為16
底層是數組,沒有被final修飾,所以長度可變
在內存中始終是一個數組,占用空間少,效率高,超出容量會自動擴容
1.3 構造方法、append、reverse、toString方法
public class StringBuilderTest {public static void main(String[] args) {StringBuilder sb = new StringBuilder();System.out.println(sb);//空串sb.append("abc");//返回this 無需接收返回值System.out.println(sb);//abc//鏈式編程:方法的返回值是對象可以繼續調用對象的方法sb.append("a").append("b").append("c");System.out.println(sb);//abcabcsb.reverse();System.out.println(sb);//cbacba//String和StringBuilder的相互轉換toString//String --> StringBuilderString s = "zxc";StringBuilder sb2 = new StringBuilder(s);sb2.append("vbn");//StringBuilder --> StringString s2 = sb2.toString();System.out.println(s2);} }2 包裝類
2.1 概念
基本數據類型的數據沒有對應的方法來操作數據,使用包裝類包裝基本類型的數據,定義一些方法來操作基本類型數據。
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
2.2 裝箱與拆箱
裝箱:把基本類型的數據,包裝到包裝類中
構造方法、靜態方法valueOf
拆箱:在包裝類中取出基本類型的數據
成員方法intValue
示例:
public class StringBuilderTest {public static void main(String[] args) {int num1 = 1;//裝箱//構造方法Integer num2 = new Integer(num1);System.out.println(num2);//1 返回值而非地址說明重寫了toString//靜態方法Integer num3 = Integer.valueOf(num1);System.out.println(num3);//1 返回值而非地址說明重寫了toString//拆箱//成員方法int num4 = num3.intValue();System.out.println(num4);//1} }2.3 自動拆箱和裝箱
JDK1.5之后,基本類型和包裝類型可以自動相互轉換。
public class StringBuilderTest {public static void main(String[] args) {Integer num1 = 1;//相當于Integer num2 = new Integer(1);//包裝類無法直接計算 會自動拆箱轉化為基本類型然后計算 最后又自動裝箱賦值給num3Integer num3 = num1 + num2;System.out.println(num3);//2//ArrayList無法直接存取整數 存取包裝類ArrayList<Integer> list = new ArrayList<>();//自動裝箱list.add(1);//自動拆箱int value = list.get(0);System.out.println(value);//1} }3 基本類型和字符串之間的轉換
字符串<—>基本類型
除Character外,靜態方法parseXxxx可以將字符串參數轉換為對應的基本類型。
Xxxx.toString、Xxxx.valueOf、str+**""**可以將Xxxx包裝類拆箱后對應的基本類型數據轉換為字符串
總結
以上是生活随笔為你收集整理的【Java】StringBuilder类、包装类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特征工程到底是什么?2019百度实习生招
- 下一篇: 【JavaWeb】数据库基础复习