Попытка сравнить уже установленный объект с двумя другими переменными - PullRequest
0 голосов
/ 07 ноября 2011

Объект, который у меня уже есть, называется client1 (просто имя), и он содержит атрибут (Описание строки, int rating). Строка на нем - Dark Hair, а рейтинг - 7. Это программа для поиска совпадений.В любом случае я пытаюсь сравнить Client1 ("Dark Hair", 7) в методе getCompatability ();Таким образом, с помощью этого метода я хочу вернуть показатели совместимости двух совпадающих характеристик или просто ноль, если описания не совпадают.Это то, что я хочу сделать

public return_type getCompatability (Characteristic otherRating) {Возьмите уже инициированные объектом Dark Hair и 7 и установите их в переменные, чтобы я мог сравнить их со вторыми двумя введенными.}

Как только я соберу их все в переменные, их сравнение будет простым.Также есть другой способ сравнения двух объектов, возможно, getCompatability ( Object, Object ), который сравнивает переменные двух объектов.

Ответы [ 2 ]

0 голосов
/ 07 ноября 2011

может использовать

 client1.getCompatiblity(client2);



eg:
class ClientDetails {
    String description;
    int rating;
    //getter, setter

    public int getCompatibility(Object client) {
        //add null check & obj type check
        ClientDetails client1 = (ClientDetails) client;
        int count = 0;
        if (description.equals(client1.getDescription()) {
           count ++;
        }
        if (rating == client1.getRating()) {
           count ++;
        }
        return count;
    }
}
0 голосов
/ 07 ноября 2011

Я думаю, что вы хотите что-то вроде этого:

public class Characteristic {
    private String description;
    private int rating;

    public Client(String description, int rating) {
        this.description = description;
        this.rating = rating;
    }

    public int getCompatability(Characteristic otherRating) {
        if (description == null && otherRating.description != null || !description.equals(otherRating.description)) {
            return 0;
        }

        int compatability;
        // Perform comparison to calculate "compatability".
        return compatability;
    }
}

Тогда это можно вызвать, сказав:

Characteristic client1 = new Characteristic("Dark Hair", 7);
Characteristic client2 = new Characteristic("Dark Hair", 4);
Characteristic client3 = new Characteristic("Light Hair", 6);
client1.getCompatability(client2); // Returns non-zero compatability since descriptions are the same
client1.getCompatability(client3); // Returns zero compatability since descriptions are different
client2.getCompatability(client3); // Returns zero compatability since descriptions are different
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...