本文目錄一覽:
- 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-hk/n/191118.html