Java: внешний класс для определения эквивалентности?

Java имеет Comparator для предусматривать сравнения объектов, внешних по отношению к самому классу, что позволяет использовать несколько/альтернативные методы упорядоченного сравнения.

Но единственным стандартным способом выполнения неупорядоченных сравнений является переопределение равных () в пределах класса.

Что делать, когда я хочу предоставить несколько/альтернативных неупорядоченных сравнений, внешних по отношению к классу? (Очевидный вариант использования - разбиение коллекции на классы эквивалентности на основе определенных свойств.)

Предполагается, что конечное использование предназначено для неупорядоченной проверки (например, не для сортировки или индексирования), можно ли когда-либо реализовать Comparator , который просто проверяет равенство, возвращает 0, если два объекта равны, и значение! = 0, когда два объекта неравны? ( примечание : единственная причина, по которой я не прыгаю с этим решением, заключается в том, что технически он может разорвать контракт для Comparator , не предоставив отношение, удовлетворяющее транзитивности и симметрии.)

Похоже, что должен был быть EquityComparator стандартный класс или что-то подобное.

(Может ли Guava обрабатывать что-либо подобное?)

-121--1338547-

Не удалось запустить приложение, позвонив по URL-адресу из Android Browser В stackoverflow есть много ответов, показывающих, как запустить приложение из веб-браузера, но я не уверен, что с моим кодом пошло не так, что никогда кажется Я пытаюсь запустить свой...

В stackoverflow есть много ответов, показывающих, как запустить приложение из веб-браузера, но я не уверен, что пошло не так с моим кодом, что, кажется, никогда не делает задуманное. Я пытаюсь запустить свое приложение по URL-адресу из любого другого приложения, например веб-браузера, изначально мой файл манифеста выглядит так

      
        
            
            
        
        
              
              
              
              
        

И когда я ввел http://ebay.com в браузере, который никогда не запускал мое приложение. Очевидно, откуда браузер знает о моем приложении?, то я попробовал другой путь вокруг и добавил другое действие под названием MyActivity и изменил файл манифеста как


        
            
            
        

         

 
      
         
         
         
         
      
   

и попытался в моем главном действии
startActivity (новый замысел (Intent.ACTION_VIEW,Uri.parse («http://mycityway.com»)));
Таким образом, получают предполагаемый результат. С помощью этого метода можно также запустить другое действие приложения.
Но большинство ответов здесь говорит, что позднее возможно. В чем заключается моя ошибка, я не смог запустить приложение из браузера. Пожалуйста, проведите меня.

5
задан kumareloaded 3 December 2014 в 14:14
поделиться