程序如下
public class Test {
public static void main(String[] args){
String a= new String("fasfdcsd");
px(a);
System.out.println(a);//在这里打印结果

}
static void px(String s){
?...//在这里吧字符串处理结束,我只希望在这里修改其他部分清不要改动
}
}期望结果是 acddffss

解决方案 »

  1. 此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【swbbs】截止到2008-07-08 02:13:37的历史汇总数据(不包括此帖):
    发帖的总数量:0                        发帖的总分数:0                        
    结贴的总数量:0                        结贴的总分数:0                        
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:---------------------结分的百分比:---------------------
    无满意结贴率:---------------------无满意结分率:---------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
      

  2. static void px(String s){
    ?...//在这里吧字符串处理结束,我只希望在这里修改其他部分清不要改动

    这种方法不可能实现你要求的功能,因为java传参数的问题,内部对s的修改对原来的对象不起作用。
    可要考虑这样设计 :import java.util.Arrays;
    public class Test {
        public static void main(String[] args) {
            String a=new String("fasfdcsd");
            a=px(a);
            System.out.println(a);
        }
        public static String px(String s){
            char buffer[]=s.toCharArray();
            Arrays.sort(buffer);
            return new String(buffer);
        }
    }
      

  3. String is a final class, so the answer in f2 is right, but the format is so...
      


  4. 楼主还应该知道STRING的不变性.
      

类似问题 »