當前位置:首頁 » 編程語言 » java字元串的拼接

java字元串的拼接

發布時間: 2022-10-16 05:24:49

java數組拼接字元串

1、代碼如下

publicstaticvoidmain(String[]args){

Stringstr[]={"a","b","c","d","e","f","g","h","i"};

System.out.println("字元串數組長度:"+str.length);

System.out.println("拼接後的字元串長度:"+method(str).length());

System.out.println("拼接後的字元串:"+method(str));


}

publicstaticStringmethod(String[]str){

Stringrs="";

for(Strings:str){

rs+=s;

}

returnrs;


}

2、效果如圖

⑵ java字元串拼接的幾種方式

String類的方法:

①利用運算符"+"

②public String concat(String str)進行字元串的拼接操作

StringBuffer的方法:

①public StringBuffer append(String str)將str添加到當前字元串緩沖區的字元序列的末尾

②public StringBuffer insert(int offset,String str)在當前字元串緩沖區的字元序列的下標

索引offset插入str。如果offset等於舊長度,則str添加在字元串緩沖區的尾部

如圖所示

⑶ Java中的字元串拼接問題

①:java中有基本數據類型和對象之分的。對於基本數據類型 ,比如int 等採用==比較是直接比較值。而你這個String是字元串對象,若是用==進行比較其實是比較對象在內存中存放的物理地址。
分析一下:
你string1指向的是一個對象,string2指向的是另一個對象,string3是string和string2的連接,又重新創建一個對象,即string3指向的又是另外一個對象。
==是比較對象在內存中存放的物理地址。String1地址=String2地址+String3地址.結果是false。
String對象有一個equals方法,是來比較對象實際內容的。"12".equals("1"+"2").結果是true。
像樓上講的改成System.out.print(string3.equals(string1+string2))就輸出true了。
②:新的String對象是在jvm的Sting Pool中生成的。

全部自己打的噢。

⑷ java調用方法可不可以拼接字元串

java的字元串當然可以拼接,可以通過符號"+"來拼接,比如字元串"aaa"、"bbb"、「ccc」,然後拼接一下"aaa"+"bbb"+"ccc"就變成了"aaabbbccc",你代碼上的問題,不是拼接的問題,而是你java語法就沒弄對,哪有()java這種東西,而且如果get是方法的話,也應該是這樣調用ui.get(),而不是直接ui.get,建議你先學學java的基本語法。

⑸ Java字元串連接

1. String類是final修飾的不可變類,+號運算,會創建一些對象進行操作。

StringBuffer與StringBuilder,是可改變的對象,每當使用這兩個對象對字元串做操作時, 實際上是在一個對象上操作的,所以速度快 .


2. StringBuilder:線程非安全的

StringBuffer:線程安全的

3. 大量字元串數據時的性能 StringBuilder > StringBuffer >String


使用情況的說明:

1. String + : 適合比較少量的字元串數據拼接

(比如System.out.println("姓名:"+name+"年齡:"+age))


2. StringBuilder : 大量字元串數據, 單線程下使用

(比如,一個main線程里進行,無其他線程)


3.StringBuffer : 大量字元串數據, 多線程下使用

(比如,多個Thread去操作)

⑹ java字元串拼接

可以不管有多少個key都先加上逗號,最後再刪除最後一個逗號。

importjava.util.HashMap;
importjava.util.Map.Entry;

publicclassTest{

publicstaticvoidmain(String[]args){
HashMap<Integer,Boolean>State=newHashMap<Integer,Boolean>();
State.put(1,true);
State.put(3,false);
State.put(4,true);
StringBuffersb=newStringBuffer();
for(Entry<Integer,Boolean>entry:State.entrySet()){
if(entry.getValue())
sb.append(entry.getKey()).append(',');
}
sb.deleteCharAt(sb.length()-1);//刪除末尾的,
System.out.println(sb);//輸出1,4
}
}

⑺ java怎麼把2個字元串拼接在一起

String類的方法:

①利用運算符"+"

②public String concat(String str)進行字元串的拼接操作

StringBuffer的方法:

①public StringBuffer append(String str)將str添加到當前字元串緩沖區的字元序列的末尾

②public StringBuffer insert(int offset,String str)在當前字元串緩沖區的字元序列的下標

索引offset插入str。如果offset等於舊長度,則str添加在字元串緩沖區的尾部

如圖所示

⑻ java字元串的拼接

import java.util.Scanner;

public class dd {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //聲明輸入對象
System.out.println("請輸入第一個字元串:") ;//列印友好提示
String first = sc.next(); //阻塞,等待輸入第一個字元串
System.out.println("請輸入第一個字元串:"); //列印友好提示
String second = sc.next(); //阻塞,等待輸入第二個字元串
String s = first+second; //進行拼接
System.out.println("您輸入的字元串拼接後的結果為:"+s); //列印拼接結果
}
}

純手打,求給分!絕對妥妥的!
這樣可以么?

⑼ java字元串拼接

不是指向同一個對象的。

假設再有個語句,String e = "test3";因為String是final的,不可修改,所以可以把e看成常量。
當再遇到String d="test"+"3"時,編譯器在這里做了優化,把這條語句優化為String d="test3",由於存在一個相同的對象e,所以d也指向了e.
所以d、e是同一個對象。

而編譯器在處理String c=a+b時,認為是兩個變數相加,不會做優化。所以c,d不是同一個對象。

如果將a,b定義為
final String a = "test";
final String b="3";
這時String c=a+b就變成了常量相加,所以編譯器會對其進行優化,即這時c,d就相等了

ps:推薦樓主一本書《深入java虛擬機》,對java的底層機制有很好的介紹。

熱點內容
安卓上哪裡下大型游戲 發布:2024-12-23 15:10:58 瀏覽:189
明日之後目前適用於什麼配置 發布:2024-12-23 14:56:09 瀏覽:56
php全形半形 發布:2024-12-23 14:55:17 瀏覽:829
手機上傳助手 發布:2024-12-23 14:55:14 瀏覽:733
什麼樣的主機配置吃雞開全效 發布:2024-12-23 14:55:13 瀏覽:830
安卓我的世界114版本有什麼 發布:2024-12-23 14:42:17 瀏覽:711
vbox源碼 發布:2024-12-23 14:41:32 瀏覽:279
詩經是怎麼存儲 發布:2024-12-23 14:41:29 瀏覽:661
屏蔽視頻廣告腳本 發布:2024-12-23 14:41:24 瀏覽:420
php解析pdf 發布:2024-12-23 14:40:01 瀏覽:819