Страницы

Поиск по вопросам

понедельник, 24 февраля 2020 г.

Сравнить Object и Int

#java


Как сравнить Object и Int.

Object может быть (примитивные типы)
 1.byte
 2.int
 3.long
 4.double
 (чем оно может быть заранее известно)


При сравнении выскакивают исключения(нельзя сравнить Int и Long). Как это можно реализовать
без приведений к String.
    


Ответы

Ответ 1



Если я правильно понял ваш вопрос, то как-то так (ideone): public static int compare(Object lhs, Integer rhs) { if (lhs instanceof Double) { return Double.compare((Double) lhs, rhs); } else if (lhs instanceof Long) { return Long.compare((Long) lhs, rhs); } else if (lhs instanceof Integer) { return Integer.compare((Integer) lhs, rhs); } else if (lhs instanceof Byte) { return Integer.compare(((Byte) lhs).intValue(), rhs); } else { throw new IllegalArgumentException(); } }

Комментариев нет:

Отправить комментарий