我需要在方法末尾传递字符串,以便直接在主方法中打印字符串,但是当我在下面这样做时,我只收到这个 [Ljava.lang.String;@135fbaa4public static String businessLogic(String[] words) { for (String word : words) { char[] arrayWordInChar = word.toCharArray(); int wordLength = word.length(); for (int i = 0, j = wordLength - 1; i < j; ) { if (!Character.isAlphabetic(arrayWordInChar[i])) i++; else if (!Character.isAlphabetic(arrayWordInChar[j])) j--; else swapLetters(arrayWordInChar, i++, j--); } arrayWordInChar.toString(); } return Arrays.toString(words);}public class Main {public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String[] words = scanner.nextLine().split(" "); businessLogic(words); System.out.println(words);}}这个问题我已经困惑了快两天了,请问是什么问题呢?
4 回答
紫衣仙女
TA贡献1839条经验 获得超15个赞
你会得到“[Ljava.lang.String;@135fbaa4”,因为单词是String[],你可以更改代码如下。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] words = scanner.nextLine().split(" ");
//businessLogic(words);
System.out.println(businessLogic(words));
}
白猪掌柜的
TA贡献1893条经验 获得超10个赞
words
首先,通过以下方式向数组添加赋值words = businessLogic(words);
要打印 arraylist 元素,您可以执行以下操作之一:
System.out.println(Arrays.toString(words));
或者
for(String word : words){ System.out.println(word); }
缥缈止盈
TA贡献2041条经验 获得超4个赞
BusinessLogic 方法返回一个字符串,但您没有将其分配给任何 String 变量,并且在 System.out 中您将数组单词打印为字符串。
System.out.println(businessLogic(words));
上面的行将打印您想要的输出。
添加回答
举报
0/150
提交
取消