вторник, 26 июля 2016 г.

преобразование типов (Оператор instanceof)

Заметка для себя по преобразованию типов и использование оператора instanceof.

Используя оператор instanceof, можно узнать, от какого класса произошел объект. Этот оператор имеет два аргумента. Слева указывается ссылка на объект, а справа — имя типа, на совместимость с которым проверяется объект. Например:



int i = 5;
float f = 444.23f;
String s = "17";
Object o = f; //o хранит объект типа Float if (o instanceof Integer)
{
Integer i2 = (Integer) o;
}
else if (o instanceof Float)
{
Float f2 = (Float) o; //отработает именно этот if
}
else if (o instanceof String)
{
String s2 = (String) o;
}

Желательно выполнять такую проверку, перед каждым сужением типа, если тип сохраненного объекта на 100% не известен.


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

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