tempad
Readygo技术搜索引擎 >>ASP技术 >> 请问String是传值的吗

请问String是传值的吗

Readygo技术搜索引擎 网络搜索 efish 2008-1-14 6:25:54

请问String是传值的吗

楼主jhtisboy(容易受伤的男人)2002-05-14 15:42:59 在 Java / J2SE / 基础类 提问

我本来想在函数中用String参数  
  我以为是传地址的  
  谁知在函数中改变不了字符串  
  请问是怎么回事  
  我应该怎么办 问题点数:20、回复次数:15Top

1 楼jdyao(jdyao)回复于 2002-05-14 15:45:21 得分 5

Strings   are   constant;   their   values   cannot   be   changed   after   they   are   created.Top

2 楼dylanwolf()回复于 2002-05-14 15:46:22 得分 5

String   是   immutable的。  
   
  把你的代码贴出来。Top

3 楼jhtisboy(容易受伤的男人)回复于 2002-05-14 15:49:34 得分 0

 
  public   int   MyEncrypt(String   str,int   num){  
          str="ok";  
  }  
  main(){  
          String   temp   =   "mystr";  
          MyEncrypt(temp);  
          System.out.println(temp);//temp还是mystr  
  }  
  Top

4 楼Patrick_DK(我有我的调调,就是这么屌)回复于 2002-05-14 15:56:10 得分 0

你这什么程序啊,错误多多  
   
  答案是mystr  
   
  String是类,传地址的  
   
  public   class   SYH  
  {  
      public   void   MyEncrypt(String   str)  
      {  
          str="ok";  
      }  
       
      public   static   void   main(String   args)  
      {  
          SYH   syh=new   SYH();  
          syh.change("222");  
   
          System.out.println(syh.s);  
      }  
       
      public   void   change(String   str)  
      {  
          this.s=str;  
      }  
       
  }Top

9 楼shihb()回复于 2002-05-14 16:33:20 得分 0

那你需要把这个字符串写成这个类中的一个域,然后用set方法来改变它!Top

10 楼qkaizhou(御赐金牌小密探!)回复于 2002-05-14 16:37:30 得分 0

是传地址,但String的内容不能修改!Top

11 楼qkaizhou(御赐金牌小密探!)回复于 2002-05-14 16:40:07 得分 0

用StringBuffer修改后,返回String即可!Top

12 楼newman0708(nch)回复于 2002-05-14 16:40:22 得分 0

用static,看看和你要求吗?Top

13 楼Patrick_DK(我有我的调调,就是这么屌)回复于 2002-05-14 16:41:54 得分 0

BTW,String类是immutable的Top

14 楼qkaizhou(御赐金牌小密探!)回复于 2002-05-14 16:42:58 得分 0

用StringBuffer修改后,返回String即可!Top

15 楼qkaizhou(御赐金牌小密探!)回复于 2002-05-14 16:58:00 得分 0

http://java.sun.com/j2se/1.4/docs/api/java/lang/StringBuffer.htmlTop

责任编辑: efish 参与评论 查找更多:
相关文章
INSERT 时出错 INSERT 时出错
请教:如何正常保存一份包含了几个过程和一张自定义… 请教:如何正常保存一份包含了几个过程和一张自定义表单的excel文件?
急、急、急! 急、急、急!
控制面板的添加删除程序中怎么手动删已安装程序项 控制面板的添加删除程序中怎么手动删已安装程序项
在C#中如何控制DNS,包括如何显示DNS中域名指定的IP(… 在C#中如何控制DNS,包括如何显示DNS中域名指定的IP(已搞定),如何修改该IP.
能在asp.net中能用asp么? 能在asp.net中能用asp么?
请教:c#中对form点最小化按钮,让窗体隐藏,如何编… 请教:c#中对form点最小化按钮,让窗体隐藏,如何编程?
请问如何在一个图片上动态划线? 请问如何在一个图片上动态划线?
号召!愿意者请跟贴!大家还是转移到VB.Net论坛吧!… 号召!愿意者请跟贴!大家还是转移到VB.Net论坛吧!那里才是希望呀!但现在人气太淡!
新手请教---有关SCO UNIX 网卡的安装,配置 新手请教---有关SCO UNIX 网卡的安装,配置
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn

分类导航
Readygo技术搜索引擎