怎么让代码输出Hello,并且只能改动change方法,main方法不能动

import java.util.*;
public class HelloWorld {
public static void main(String[] args) {
String s="JavaHelloOK";
change(s);
System.out.println(s);
}
static void change(String ss){
ss=ss.substring(4,9);
}
}

供参考

https://blog.csdn.net/qq_60003652/article/details/119841331?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_utm_term~default-0.pc_relevant_default&spm=1001.2101.3001.4242.1&utm_relevant_index=3

emm...萌新思路是,传参进change之后,把它变成数组进行改动,再把它改成一个字符串返回

就是在change里面截取Hello

Java 的方法调用的参数是值传递的,change 方法的形参 ss 指向的是实参 s 内容的地址而已,修改 ss 后实参 s 指向的内容并不会发生变化,因此只修改 change 方法是不可行的,不过可以打印 change 方法的返回值,示例如下。

public class HelloWorld {
    public static void main(String[] args) {
        String s = "JavaHelloOK";
        s = change(s);
        System.out.println(s);
    }

    static String change(String ss) {
        ss = ss.substring(4, 9);
        return ss;
    }
}

如有帮助,请采纳。

你在你的change方法里面加个 System.out.println(ss); 这样不就可以输出hello了吗

多输出一些日志排查问题。如果想要在方法返回后输出hello,那么要加个方法返回值。
在Java方法中参数列表有两种类型的参数,基本类型和引用类型。题主用的是String类型的参数。String类型在参数传递时的表现和基本类型一致。

方法1)在方法内部输出

public class HelloWorld {
    public static void main(String[] args) {
        String s = "JavaHelloOK";
        change(s);
        System.out.println("s=" + s);
    }

 static void change(String ss) {
        ss = ss.substring(4, 9);
        System.out.println("ss=" + ss);
    }
}

方法2)加方法返回值

  static String change(String ss) {
        ss = ss.substring(4, 9);
        return ss;
    }