我正在尝试首先输出如下所示的字符串:
Hello -
那么我需要,例如,如果我写的话,简会输出:
Hello - - Jane -
此代码正确吗?如果不是,那我做错了什么,此代码实际上是做什么的?
谢谢
public class myClass {
public static void main(String[] args) {
String a = new String("Hello");
addHyphen(a);
System.out.println(a);
}
public static void addHyphen(String someText) {
someText = "-" + someText + "-";
}
}
答案 0 :(得分:2)
我猜你正在寻找这样的东西:
public class Main
{
public static void main(String[] args) {
String a = "Hello";
addHyphen(a);
}
public static void addHyphen(String someText) {
someText = "-" + someText + "-";
System.out.println(someText);
}
}
答案 1 :(得分:1)
[a-zA-Z0-9_]*
参数的作用域为someText
方法;您正在执行的分配在方法外部不可见。您可以更改方法以返回addHyphen
,然后将该结果分配给String
。
答案 2 :(得分:1)
如果要打印空格,请在addHyphen()
中的传递的字符串后面加上连字符,然后可以执行以下操作:
public static String addHyphen(String someText) {
return someText + " -";
}
另外,请注意,此函数返回一个字符串,因此您需要在main()
中更改代码:
String a = new String("Hello");
System.out.println(addHyphen(a));
这只是返回字符串,并在调用函数后附加连字符。
注意:如果要输入字符串作为输入,则需要使用Scanner
类。获取String对象输入的代码为:
Scanner scan = new Scanner(System.in);
System.out.println(“Input a String:”);
String str = scan.nextLine();
请注意,您需要导入java.util.Scanner
才能使用Scanner
类
答案 3 :(得分:1)
我建议您研究Scope,sometext
不能保留其价值。每当new
时,它将始终具有called
值。您要么更改变量的scope
,要么可以执行以下操作:
public class myClass
{
public static void main(String[] args)
{
String a = "Hello";
String b = "Jane";
System.out.println( addHyphen(a));
System.out.println( addHyphen(a)+ addHyphen(b));
}
public static String addHyphen(String someText)
{
return " -" + someText + "-";
}
}