在java中,String是一个类,它是可以改变的,所以我们不能改变它的值.在下面的代码中,它将连接其他字符串,没有任何错误.所以我想问一下,如果它是不可变的,那么为什么在这个以下代码值的String中是改变?
import java.util.*;
public class conc
{
public static void main(String args[])
{
String a="Sheetal";
a=a+"Ga";
System.out.println("Result:"+a);
}
}
Run Code Online (Sandbox Code Playgroud) 有人能回答我吗?
public class ReplaceString{
public static void main(String arg[]) {
String a = "Hariom";
a = a.replace('H', 'b');
System.out.println(a);
}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用String.replace(oldChar,newChar),但这将返回一个Changed字符串。例:
String tempString= "abc is very easy";
String replacedString=tempString.replace("very","not");
System.out.println("replacedString is "+replacedString);
System.out.println("tempString is "+tempString);
Run Code Online (Sandbox Code Playgroud)
输出:
replacedString is abc is not easy
tempString is abc is very easy
Run Code Online (Sandbox Code Playgroud)
所以我的问题是有什么方法可以替换字符串而不将其存储在另一个字符串中。
我想要输出
String tempString= "abc is very easy";
tempString.replace("very","not");
System.out.println("tempString is "+tempString);
Run Code Online (Sandbox Code Playgroud)
如
tempString is abc is not easy.
Run Code Online (Sandbox Code Playgroud)
通过使用替换功能。
因为String是不可变的我们如何更改String for Example
String s1="Hello";
String s2="Manas";
Run Code Online (Sandbox Code Playgroud)
现在我正在制作
s1=s1+s3;
Run Code Online (Sandbox Code Playgroud)
它将打印"Hello Manas".所以String s1会改变.
那你怎么能说String是不可变的呢?