java怎么把2个字符串拼接在一起?

Python08

java怎么把2个字符串拼接在一起?,第1张

差距很大

GTX1060撑死也就GTX980的性能

RX 480和顶级非公GTX970差不多

而GTX1070比GTX980TI还强一点  

二者差距百分之40

不可变的String对象

在Java中,String对象是不可变的(Immutable)。在代码中,可以创建多个某一个String对象的别名。但是这些别名都是的引用是相同的。

比如s1和s2都是”droidyue.com”对象的别名,别名保存着到真实对象的引用。所以s1 = s2。

String s1 = "droidyue.com"String s2 = s1System.out.println("s1 and s2 has the same reference =" + (s1 == s2))

Java中仅有的重载运算符

在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去操作)

public class Test {

public static void main(String[] args){

String[] str={"a","b","c","d","e","f","g","h","i"}//定义字符串数组

method(str)

}

private static void method(String[] s){

if(s==null)

return

StringBuffer sBuffer=new StringBuffer()

for(int i=0i<s.lengthi++){//将数组拼接成字符串

sBuffer.append(s[i])

}

System.out.println("字符串长度:"+sBuffer.length())

System.out.println("拼接的字符串:"+sBuffer.toString())

}

}