-6

我想知道是否有任何方法可以比较 Java 中的 String 对象。因为我想通过它们的“名称”对一些对象进行排序,一个字符串。如果没有,你会建议我如何解决这个问题?

该对象不是字符串。该对象是一个自己指定的类,其中包括一个字符串对象,我想从中对其进行排序。

Class MyClass  
{
    String mName;

    MyClass(String name)
    {
        mName = name;
    }
}

然后我想按他们的成员 mName 对 Object MyClass 的数组进行排序。

4

2 回答 2

1

请参阅Comparable 的文档

class MyClass extends Comparable< MyClass >
{
    String mName;

    MyClass(String name)
    {
        mName = name;
    }

    public int compareTo( MyClass right ) {
       return this.mName.compareTo( right.mName );
    }
}
于 2013-04-16T19:20:20.980 回答
1

要按属性对 Object 进行排序,您必须使 Object 实现 Comparable 接口并覆盖该compareTo()方法。然后你可以做一个Arrays.sort(array);.

Class MyClass  implements Comparable<MyClass>
{
   String mName;

   MyClass(String name)
   {
      mName = name;
   }

   public int compareTo(MyClass instance) {
     return mName.compareTo(instance.mName);
  }

 }
于 2013-04-16T19:24:25.767 回答