日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

【Java】StringBuilder类、包装类

發布時間:2024/7/5 java 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【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 概念

基本數據類型的數據沒有對應的方法來操作數據,使用包裝類包裝基本類型的數據,定義一些方法來操作基本類型數據。

類型包裝類
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean

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包裝類拆箱后對應的基本類型數據轉換為字符串

public static void main(String[] args) {//基本類型--->字符串//法1:基本類型+""√String s1 = 100+"";System.out.println(200+s1);//200100//法2:String toStringString s2 = Integer.toString(100);System.out.println(200+s2);//200100//法3 String valueOf()String s3 = String.valueOf(100);System.out.println(200+s3);//200100//字符串--->基本類型//法1:Xxxx parseXxxx(String str)int num = Integer.parseInt("100");System.out.println(200+num);//300} 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的【Java】StringBuilder类、包装类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。