当前位置:首页 » 编程语言 » 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 浏览:188
明日之后目前适用于什么配置 发布:2024-12-23 14:56:09 浏览:52
php全角半角 发布:2024-12-23 14:55:17 浏览:827
手机上传助手 发布:2024-12-23 14:55:14 浏览:731
什么样的主机配置吃鸡开全效 发布:2024-12-23 14:55:13 浏览:828
安卓我的世界114版本有什么 发布:2024-12-23 14:42:17 浏览:709
vbox源码 发布:2024-12-23 14:41:32 浏览:275
诗经是怎么存储 发布:2024-12-23 14:41:29 浏览:659
屏蔽视频广告脚本 发布:2024-12-23 14:41:24 浏览:418
php解析pdf 发布:2024-12-23 14:40:01 浏览:818