2 andrew9991 andrew9991 于 2016.04.08 19:33 提问

java的method怎么返回 求大神教下

import java.util.Scanner;
import java.util.Arrays;
public class Anagram {

// Returns a copy of the string in sorted order.
public static String sort(String s) {
    char [] sortString = s.toCharArray();
    Arrays.sort(sortString);
    String sorted = String.valueOf(sortString);
    return s;


}

public static void main(String[] args) {

    Scanner in = new Scanner(System.in);

    System.out.print("Enter line: ");
    String line = in.next();
    String lineString = line.replaceAll("[^0-9A-Za-z]", "");
    String lineSortString = sort(lineString);

    System.out.print("Enter anagram: ");
    String anagram = in.next();
    String anagramString = anagram.replaceAll("[^0-9A-Za-z]", "");
    String anagramSortString = sort(anagramString);

    if(lineSortString == anagramSortString){
        System.out.println("\nAnagram!");
    }else{
        System.out.println("\nNot a anagram.");
    }
}

}

要怎么改才行 实在不知道怎么弄

2个回答

dcxy0
dcxy0   Ds   Rxr 2016.04.08 19:59
已采纳
 public static String sort(String s) {
    char [] sortString = s.toCharArray();
    Arrays.sort(sortString);
    String sorted = String.valueOf(sortString);
    return sordet;//这样改试试
}
andrew9991
andrew9991 。。。抱歉 网卡住了刚才 回太多了
一年多之前 回复
andrew9991
andrew9991 唉 这么改运行也还是怎么都是输出的 Not a angram. 后面也写错了么
一年多之前 回复
andrew9991
andrew9991 唉 这么改运行也还是怎么都是输出的 Not a angram. 后面也写错了么
一年多之前 回复
andrew9991
andrew9991 唉 这么改运行也还是怎么都是输出的 Not a angram. 后面也写错了么
一年多之前 回复
andrew9991
andrew9991 唉 这么改运行也还是怎么都是输出的 Not a angram. 后面也写错了么
一年多之前 回复
andrew9991
andrew9991 唉 这么改运行也还是怎么都是输出的 Not a angram. 后面也写错了么
一年多之前 回复
andrew9991
andrew9991 唉 这么改运行也还是怎么都是输出的 Not a angram. 后面也写错了么
一年多之前 回复
andrew9991
andrew9991 唉 这么改运行也还是怎么都是输出的 Not a angram. 后面也写错了么
一年多之前 回复
w123456wwqq
w123456wwqq   2016.04.08 23:16

字符串的比较,不能用 == 直接比较的。要用compareTo()。

 public class Anagram {
    // Returns a copy of the string in sorted order.
     public static String sort(String s) {
         char [] sortString = s.toCharArray();
         Arrays.sort(sortString);
         String sorted = String.valueOf(sortString);
         return sorted;


     }

     public static void main(String[] args) {

         Scanner in = new Scanner(System.in);

         System.out.print("Enter line: ");
         String line = in.next();
         String lineString = line.replaceAll("[^0-9A-Za-z]", "");
         String lineSortString = sort(lineString);

         System.out.print("Enter anagram: ");
         String anagram = in.next();
         String anagramString = anagram.replaceAll("[^0-9A-Za-z]", "");
         String anagramSortString = sort(anagramString);

         int t = lineSortString.compareTo(anagramSortString);
         if(t==0){
             System.out.println("\nAnagram!");
         }else{
             System.out.println("\nNot a anagram.");
         }
     }
}
 插入这段代码,int t = lineSortString.compareTo(anagramSortString);

而且sort方法返回的是sorted。if()比较t == 0,相等。t > 0 ,是第一个字符串大于第二个,同理 t < 0,是第一个小于第二个

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!