本文目錄一覽:
- 1、java大神 字元串的轉換基本數據類型
- 2、java中字元串類型與其它類型(整形,浮點型,字元型)的區別
- 3、java中字元串的是什麼?
- 4、java string是什麼類型
- 5、java中string是什麼類型
java大神 字元串的轉換基本數據類型
1. 字元串轉換為數字
java.lang中的Integer類調用其類方法public static int parseInt(String s)可以將由「數字」字元組成的字元串,比如「876」轉換為int數據類型,例如:
int x;
String s = “876”;
x = Integer.parseInt(s);
類似地,使用java.lang包中的Byte、Short、Long、Float、Double類調用相應的類方法
public static byte parseByte(String s) throws NumberFormatException
public static short parseShort(String s) throws NumberFormatException
public static long parseLong(String s) throws NumberFormatException
public static double parseDouble(String s) throws NumberFormatException
2. 可以使用下面的方法將數字轉化為相應的字元串對象:
① valueOf方法
public static String valueOf(byte n)
public static String valueOf(int n)
public static String valueOf(long n)
public static String valueOf(float n)
public static String valueOf(double n)
例如:將形如123,12345.8等數值轉換為字元串
String str = String.valueOf(123)
String str = String.valueOf(12345.8)
② 可以使用toString方法(一個對象通過調用該方法可以獲取該對象的字元串表示)
使用java.lang包中的Byte、Integer、Short、Long、Float、Double類調用相應的類方法,Integer.toString、Double.toString,等等
比較常用的是Integer.toString(“要進行轉換的數字”),方法得到的是一個字元串的對象
例子:
int n = 123;
String m = Integer.toString(n);
System.out.println(m + 1);
Date date = new Date();
System.out.println(date.toString());
所以我們可以使用上面的方法將數字轉化為一個字元串
3. 字元串與字元數組
① 將字元數組轉換為字元串對象
使用String類的構造方法:String(char a[])和String(char a[],int offset,int length)
分別用數組a中的全部字元和部分字元構造字元串對象
例子:
char a[] = {‘1′,’2′,’3’};
System.out.println(new String(a).length());
java中字元串類型與其它類型(整形,浮點型,字元型)的區別
String是引用類型。整形,浮點型等是值類型。兩者的區別是,引用類型變數在棧中存放的是地址,該地址就是實際在堆中用new申請的存放真實值得空間的首地址。而值類型,在棧中存放的就是數值。所以說定義一個值類型就是放在棧裡面的,而引用類型則實際上是放在堆裡面的。
java中字元串的是什麼?
java中的字元串是由多個字元組成的一串數據,字元串是常量,一旦被創建就不能改變,這是因為字元串的值是存放在方法區的常量池裡面,但是引用可以改變。字元串字面值”ab”也可以看成是一個字元串對象。
java string是什麼類型
Java中String是一個特殊的包裝類數據,有兩種創建形式:
String s = “abc”;
String s = new String(“abc”);
第一種先在棧中創建一個對String類的對象引用變數s,然後去查找”abc”是否被保存在字元串常量池中,如果沒有則在棧中創建三個char型的值’a’、’b’、’c’,然後在堆中創建一個String對象object,它的值是剛才在棧中創建的三個char型值組成的數組{‘a’、’b’、’c’},接著這個String對象object被存放進字元串常量池,最後將s指向這個對象的地址,如果”abc”已經被保存在字元串常量池中,則在字元串常量池中找到值為”abc”的對象object,然後將s指向這個對象的地址。
第一種特點:JVM會自動根據棧中數據的實際情況來決定是否有必要創建新對象。
第二種可以分解成兩步1、String object = “abc”; 2、String s = new String(object); 第一步參考第一種創建方式,而第二步由於”abc”已經被創建並保存到字元串常量池中,因此jvm只會在堆中新創建一個String對象,它的值共享棧中已有的三個char型值。
第二種特點:一概在堆中創建新對象,而不管其字元串值是否相等,是否有必要創建新對象。
在講字元串比較前,必須要了解==和equals的區別:
因為java所有類都繼承於Object基類,而Object中equals用==來實現,所以equals和==是一樣的,都是比較對象地址,java api里的類大部分都重寫了equals方法,包括基本數據類型的封裝類、String類等。對於String類==用於比較兩個String對象的地址,equals則用於比較兩個String對象的內容(值)。
java中string是什麼類型
Java 中 string 不屬於基本的數據類型,只是代表一個類,是一個引用類型。String是引用類型,不過java有字元串常量池機制,聲明字元串常量或者字元串常量連接都要用到字元串常量池。如果常量池中有該字元串序列則返回,所以str創建了一個字元串並放入常量池中,str2內的字元序列已在常量池中所以str2直接指向str指向的對象。
基本數據類型就只有八個,數值型:byte,short,int,long,浮點型:float,double,字元型:char,布爾型:boolean。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/191118.html