java string 值改变_可以在Java中更改这样的String值吗?

我认为一旦String初始化为某个值,你就无法改变它的值?显然,我可以在我的程序中。

public class Pekka {

public static void main (String[] args){

Person p = new Person("Pekka Mikkola", "040-123123");

System.out.println(p.getName());

System.out.println(p.getNumber());

System.out.println(p);

p.changeNumber("000-0001");

System.out.println(p);

}

}

class Person {

private String name, number;

Person(String name, String number){

this.name = name;

this.number = number;

}

public String getName(){

return name;

}

public String getNumber(){

return number;

}

public void changeNumber(String newNumber){

number = newNumber;

}

@Override

public String toString() {

return getName() + " number: " + getNumber();

}

}

我的输出:

Pekka Mikkola

040-123123

Pekka Mikkola number: 040-123123

Pekka Mikkola number: 000-0001

所以我显然可以根据需要多次更改字符串数字的值。怎么会?我可以改变变量" number"的值。在changeNumber方法中,即使它已经被初始化了?我认为Java中的字符串一旦初始化就无法改变?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值