有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

有人能解释一下为什么这个用来反转字符串的Java程序不起作用吗?

我编写了一个Java程序,该程序可以反转扫描的字符串

  import java.util.*;
   public class ReverseString{
    public static void main(String args[]){ 
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter a string");
       String stringtoreverse = sc.nextLine();
      Reverse(stringtoreverse);
  }

  public static void Reverse(String s){
    char a[] = s.toCharArray();
    Arrays.sort(a);
    String b = a.toString();
    System.out.println(b);
  }
}

我测试了它,这就是我得到的

   Enter a string
   hi
  [C@757ecdf0

答案应该是“ih”。 有人能解释为什么它不能按我所希望的方式工作,以及为什么我得到那个输出吗


共 (1) 个答案

  1. # 1 楼答案

    要使用Arrays获取人类可读的格式,请使用:

    Arrays.toString(a)
    

    或者更为最小的new String(a)

    数组的Java toString()打印[,后跟表示数组元素类型的字符,然后是@,然后是数组的标识哈希代码(类似于内存地址)