2.6.4 Поразрядные операторы
Языком Java поддерживаются несколько поразрядных операторов. Эти операторы используются с int, short, long, byte, и типами данных char. В следующей таблице представлены различные поразрядные операторы.
2.6.5 Оператор назначения
Оператор Назначения (=) присваивает значение переменной. Мы можем назначить значение на более чем одной переменной одновременно.
Например,
int a = 20000;
int p,q,r,s;
p = q = r = s = a;
Здесь, переменным р, q, r и s будут назначены значения переменной а, которое является 20000.
Когда значение присваивается более одной переменной, записанными в одну строчку, то операция назначения выполняется слева направо. Так в вышеупомянутом примере, сначала значение назначается s, затем значение s назначается г и так далее.
2.6.6 Троичный оператор (?:)
Троичный оператор (?:) может заменить конструкцию if - else. Синтаксис этого оператора:
Рисунок 2.4: Троичный оператор
Следующая программа показывает, как троичный оператор может заменить конструкцию if-else.
Пример 8:
class TernaryOp
{
public static void main(String args[])
{
int salary,daysPresent = 30; salary = daysPresent == 20 ? 2000 : 3000;
System.out.println(«Your salary for the month is $»+salary);
}
}
Вывод вышеупомянутой программы
Рисунок 2.5: Вывод TernaryOp
Значение daysPresent сравнивается с 20. Если это - 20 то назначается заработок 2000 иначе 3000. Здесь daysPresent имеет значение 30, и следовательно заработок имеет значение 3000.
2.6.7 Оператор Instanceof
instanceof - объектный оператор ссылки и возвращает истину, если объект слева -экземпляр класса, указанного справа. Этот оператор позволяет нам определять, принадлежит ли объект специфическому классу.
Рассмотрите код, данный ниже.
Пример 9:
class InstanceofDemo
{
public static void main (String args [])
{
InstanceOfDemo t = new InstanceOfDemo( );
if ( t instanceof InstanceOfDemo)
{
System.out.println ( T is instanceof InstanceOfDemo );
}
else
{
System.out.println ( T is not instance of InstanceOfDemo! );
}
}
}
В коде, данном ниже:
Инструкция,
if (t instanceof InstanceOfDemo)
является истинной, так как объект t принадлежит классу InstanceOfDemo. Следовательно, мы получаем вывод как показано на Рисунке 2.6.
Рисунок 2.6: Вывод InstanceOfDemo