當前位置:首頁 » 編程語言 » javaintstring

javaintstring

發布時間: 2023-10-16 13:03:39

java int加string類型 int加char類型

Java 提供兩種不同的類型:引用類型和原始類型(或內置類型)。Int是java的原始數據類型,Integer是java為int提供的封裝類。Java為每個原始類型提供了封裝類。
原始類型封裝類
boolean -->Boolean
char --->Character
byte -->Byte
short -->Short
int -->Integer
long -->Long
float -->Float
double -->Double
引用類型和原始類型的行為完全不同,並且它們具有不同的語義。引用類型和原始類型具有不同的特徵和用法,它們包括:大小和速度問題,這種類型以哪種類型的數據結構存儲,當引用類型和原始類型用作某個類的實例數據時所指定的預設值。對象引用實例變數的預設值為 null,而原始類型實例變數的預設值與它們的類型有關。同時為了面向對象操作的一致性,這些基本類型都有相應的封裝類型:Integer、Short、Long、Byte、Float、Double、Character等。
因為封裝類型是對象,所以可以進行相應的很多對象能力函數操作,這樣就可以提供很多基本類型難以完成的工作的完成和實現。
你可以通過以下方式來聲明該類型。

int a,a為int類型的變數
char a,a為char類型的

String對象

1. 首先String不屬於8種基本數據類型,String是一個對象。

因為對象的默認值是null,所以String的默認值也是null;但它又是一種特殊的對象,有其它對象沒有的一些特性。

2. new String()和new String(「」)都是申明一個新的空字元串,是空串不是null;

3. String str=」punkll」;

String str=new String (「punkll」);的區別:

在這里,我們不談堆,也不談棧,只先簡單引入常量池這個簡單的概念。

常量池(constant pool)指的是在編譯期被確定,並被保存在已編譯的.class文件中的一些數據。它包括了關於類、方法、介面等中的常量,也包括字元串常量。

看例1:

String s0=」punkll」;

String s1=」punkll」;

String s2=」punk」 + 「ll」;

System.out.println( s0==s1 );

System.out.println( s0==s2 );

結果為:

true

true

首先,我們要知結果為道Java會確保一個字元串常量只有一個拷貝。

因為例子中的s0和s1中的」punkll」都是字元串常量,它們在編譯期就被確定了,所以s0==s1為true;而」punk」和」ll」也都是字元串常量,當一個字元串由多個字元串常量連接而成時,它自己肯定也是字元串常量,所以s2也同樣在編譯期就被解析為一個字元串常量,所以s2也是常量池中」punkll」的一個引用。

所以我們得出s0==s1==s2;

用new String() 創建的字元串不是常量,不能在編譯期就確定,所以new String() 創建的字元串不放入常量池中,它們有自己的地址空間。

看例2:

String s0=」punkll」;

String s1=new String(」punkll」);

String s2=」punk」 + new String(「ll」);

System.out.println( s0==s1 );

System.out.println( s0==s2 );

System.out.println( s1==s2 );

結果為:

false

false

false

例2中s0還是常量池中」punkll」的應用,s1因為無法在編譯期確定,所以是運行時創建的新對象」punkll」的引用,s2因為有後半部分new String(「ll」)所以也無法在編譯期確定,所以也是一個新創建對象」punkll」的應用;明白了這些也就知道為何得出此結果了。

⑵ java怎麼把一個int型轉換為string類型

JAVA 中int類型轉String類型的通常方法,有三種:

1、String.valueOf(int i)

2、Integer.toString(int i)

3、i+""; //i 為 int類型

三種方法效率排序為:


Integer.toString(int i) > String.valueOf(int i) > i+"";


代碼測試:

public static void main(String[] args) {
int[] intArr = new int[1000000];
String[] strArr1 = new String[1000000];//為了公平分別定義三個數組

String[] strArr2 = new String[1000000];
String[] strArr3 = new String[1000000];
//賦值
Long t1 = System.currentTimeMillis();
for(int i=0;i<1000000;i++){
intArr[i]=i+1;
}
Long t2 = System.currentTimeMillis();
for(int i=0;i<1000000;i++){
strArr1[i] = String.valueOf(intArr[i]);
}
Long t3 = System.currentTimeMillis();
for(int i=0;i<1000000;i++){
strArr2[i] = Integer.toString(intArr[i]);
}
Long t4 = System.currentTimeMillis();
for(int i=0;i<1000000;i++){
strArr3[i] = intArr[i]+"";
}
Long t5 = System.currentTimeMillis();
System.out.println("t1 = "+t1);
System.out.println("t2 = "+t2);
System.out.println("t3 = "+t3);
System.out.println("t4 = "+t4);
System.out.println("t5 = "+t5);
System.out.println("賦值:"+(t2-t1));
System.out.println("String.valueOf(i):"+(t3-t2));
System.out.println("Integer.toString(i):"+(t4-t3));
System.out.println("i+\"\":"+(t5-t4));
}

我的測試結果為:

t1 = 1298798872078
t2 = 1298798872093
t3 = 1298798872656
t4 = 1298798873000
t5 = 1298798873671
賦值:15
String.valueOf(i):563
Integer.toString(i):344
i+"":671

⑶ 怎麼將int數據轉換成String數據呢

方法1:

int i=10;

String s=""+i;

這是利用java的toString機制來做的轉換,任何類型在和String相加的時候,都會先轉換成String。

方法2:

int i=10;

String s=String.valueOf(i);

這是利用String類提供的工廠方法來做的轉換。

1、) String s = String.valueOf(i);

2、) String s = Integer.toString(i);

3、) String s = "" + i;

(3)javaintstring擴展閱讀

因為String類是一個不可變對象,這就使得String類可以隨意的重用,而不會有問題。

事實上在系統內部是有一個String對象的緩沖池,當使用String.valueOf方法的時候,會盡
可能的從這個池中取出符合條件的對象。

需要明確的是String是引用類型,int是基本類型,所以兩者的轉換並不是基本類型間的轉換,這也是該問題提出的意義所在,SUN公司提供了相應的類庫供編程人員直接使用。

⑷ Java中String和Int的相互轉換

string和int互換:

// String 轉int

String str = 「123」;

int a = Integer.parseInt(str);

// int 轉 String

int b = 1;

String str = String.valueOf(b);

(4)javaintstring擴展閱讀:

數據類型在數據結構中的定義是一個值的集合以及定義在這個值集上的一組操作。

變數是用來存儲值的所在處,它們有名字和數據類型。變數的數據類型決定了如何將代表這些值的位存儲到計算機的內存中。

在聲明變數時也可指定它的數據類型。所有變數都具有數據類型,以決定能夠存儲哪種數據。

數據類型包括原始類型、多元組、記錄單元、代數數據類型、抽象數據類型、參考類型以及函數類型。

⑸ Java中String與Int怎樣相互轉換

一、將字串 String 轉換成整數 int
A. 有2個方法:
1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([String],[int radix]);
2). int i = Integer.valueOf(my_str).intValue();
PS:
字串轉成 Double, Float, Long 的方法大同小異.
第一種方法:i=Integer.parseInt([String]);//直接使用靜態方法,不會產生多餘的對象,但會拋出異常。
第二種方法:i=Integer.valueOf(my_str).intValue();//Integer.valueOf(my_str) 相當於 new Integer(Integer.parseInt(my_str)),也會拋出異常。

二、將整數 int 轉換成字串 String
A. 有3種方法:
1.) String s = String.valueOf(i);
2.) String s = Integer.toString(i);
3.) String s = "" + i;
PS:
Double, Float, Long 轉成字串的方法大同小異.
第1種方法:s=String.valueOf(i); //直接使用String類的靜態方法,只產生一個對象。
第3種方法:s= "" + i; //會產生兩個String對象。

⑹ java如何int轉string

java int類型轉換String類型方法有:用 int i+""、用String.valueOf(),還可以直接強制類型轉換。

熱點內容
電腦配置夠但為什麼打lol掉幀 發布:2025-02-01 01:37:08 瀏覽:315
21款朗逸哪個配置比較劃算 發布:2025-02-01 01:35:32 瀏覽:975
建築動畫片腳本 發布:2025-02-01 01:35:21 瀏覽:468
管家婆如何用阿里雲伺服器 發布:2025-02-01 01:29:09 瀏覽:648
解壓耳放 發布:2025-02-01 01:20:18 瀏覽:175
cars演算法 發布:2025-02-01 01:02:26 瀏覽:176
資料庫超載 發布:2025-02-01 00:57:15 瀏覽:32
fgo安卓如何玩日服 發布:2025-02-01 00:49:40 瀏覽:715
sql2000服務管理器 發布:2025-02-01 00:48:02 瀏覽:677
榮耀暢玩什麼配置 發布:2025-02-01 00:36:35 瀏覽:458