java operators arithmetic
В този урок ще научите за различни оператори на Java - Оператори за възлагане, аритметика, единодушие, равнопоставеност и релация, условни, сравнение на типове и битови и битови оператори за смяна:
въпроси за ръчно тестване на интервю за 5 години опит
Но преди да започнем директно с него, нека разберем накратко термина „Оператори“
Операторите не са нищо друго освен специални символи. Целта на тези символи е да извършат конкретна операция върху един, два или три операнда и след това да върнат резултат. Например, символи като =,<, & , ^ etc .
Какво ще научите:
Java оператори
Нека сега видим операторите, които се поддържат на езика Java.
Java поддържа оператори от следните категории:
- Оператори за присвояване
- Аритметични оператори
- Унарни оператори
- Равенство и релационни оператори
- Условни оператори
- Тип оператор за сравнение
- Побитови и битови оператори за смяна
# 1) Оператори за присвояване
Ще видим един от често срещаните оператори, т.е. оператор за просто присвояване ‘=’. Този оператор присвоява стойността отдясно на операнда отляво.
Нека разгледаме следната извадка на Java, която илюстрира използването на оператори за присвояване.
public class AssignmentOperatorDemo{ public static void main(String args()){ int x=300; //Assigns value on the left of ‘=’ i.e. 300 to it’s left i.e. variable x int y=700; //Assigns value on the left of ‘=’ i.e. 700 to it’s left i.e. variable y int z = 0; //Assigns value on the left of ‘=’ i.e. 0 to it’s left i.e. variable z z = x+y; //Assigns value on the left of ‘=’ i.e. (x+y) i.e. 300+700=1000 to it’s left i.e. variable z System.out.println(x); //This prints output as 300 System.out.println(y); //This prints output as 700 System.out.println(z); //This prints output as 1000 } }
Тази програма отпечатва следния изход:
Този оператор може да се използва и върху обекти за присвояване на препратки към обекти.
Например, Автомобил car1 = нов Car (); // ‘=’ присвоява нов екземпляр на обект Car () на референтен обект car1.
# 2) Аритметични оператори
За извършване на аритметични операции като събиране, изваждане, умножение и деление, Те са идентични с тези на основната математика. Единственият различен символ е „%“, който е операторът модул или остатък и целта на този операнд е да раздели един операнд на друг и да върне остатъка като резултат.
Следват аритметичните оператори, поддържани в Java:
Оператор | Описание |
---|---|
| | Побитово включващо ИЛИ |
+ | Добавителен оператор (използва се и за конкатенация на низове) |
- | Оператор за изваждане |
* | Оператор за умножение |
/ | Оператор на дивизия |
% | Оператор на модула или остатъка |
По-долу е даден JAVA пример, илюстриращ използването на аритметични оператори:
public class ArithmeticOperatorDemo { public static void main (String() args) { int x = 30; int y = 20; int result_value = x + y; System.out.println('30 + 20 = ' + result_value); // This prints o/p 50 result_value = x - y; System.out.println('30 - 20 = ' + result_value);// This prints o/p 10 result_value = x * y; System.out.println('30 * 20 = ' + result_value);// This prints o/p 600 result_value = x / y; System.out.println('30 / 20 = ' + result_value);// This prints o/p 1 result_value = x % y; // Returns remainder of division 30/20 i.e. 10 System.out.println('30 % 20 = ' + result_value);// This prints o/p 10 } }
Тази програма отпечатва следния изход:
# 3) Унарни оператори
Унарните оператори са операторите, които се нуждаят от един операнд.
Например, операции като увеличаване / намаляване на стойност с единица, отричане на израз или обръщане на стойността на булева стойност.
Следват унарните оператори, поддържани в Java:
Оператор | Описание |
---|---|
+ | Унарни плюс оператор; показва положителна стойност (числата са положителни и без това) |
- | Унарни минус оператор; отрича израз |
++ | Инкремент оператор; увеличава стойност с 1 |
- | Оператор за декрементиране; намалява стойност с 1 |
! | Оператор на логическо допълнение; инвертира стойността на булева стойност |
По-долу е даден пример на Java, илюстриращ използването на унарни оператори:
public class UnaryOperatorDemo { public static void main(String() args) { int result_value = +10;// indicated positive value 10 System.out.println(result_value); //o/p is 10 result_value --; // decrements the value of 10 by 1 System.out.println(result_value); //o/p is 9 result_value ++; // increaments the value of 9 by 1 System.out.println(result_value); //o/p is 10 result_value = - result_value;// this minus operator negates an expression System.out.println(result_value); //o/p is -10 booleanisPass = false; System.out.println(isPass); //o/p is false System.out.println(!isPass);//o/p is inverted isPass value i.e. true } }
Тази програма отпечатва следния изход:
Операторите за увеличаване / намаляване могат да се използват преди (префикс) или след (постфикс) операнда. Въпреки че и двете стойности ще върнат първоначалната стойност, която се увеличава / намалява с една. Разликата е, че префиксният оператор оценява операнда до увеличената стойност, докато версията за постфикс оценява операнда до първоначалната стойност.
Нека да разгледаме следния PreAndPostDemo, илюстриращ префикс и постфикс функционалност .
public class PreAndPostDemo { public static void main(String() args){ int a = 5; System.out.println(a++); // output is 5 System.out.println(a); // output is 6 System.out.println(++a); // output is 7 System.out.println(a++); // output is 7 System.out.println(a); // output is 8 } }
Тази програма отпечатва следния изход:
# 4) Равенство и релационни оператори
Равенството и релационните оператори са операторите за сравнение и определяне дали един операнд е по-голям от, по-малък от, равен на или не равен на друг операнд.
Следват операторите за равнопоставеност и релация, поддържани в Java:
Оператор | Описание |
---|---|
== | Равна на |
! = | Не е равно на |
> | По-голям от |
> = | По-голямо или равно на |
< | По-малко от |
<= | По-малко или равно на |
Вижте следния пример на Java, илюстриращ използването на релационни оператори:
public class RelationalOperatorDemo { public static void main(String() args){ int a = 5; int b = 10; boolean resultFlag = (a == b); System.out.println('a == b :'+ resultFlag);//o/p is false as 5 is not equal to 10 resultFlag = (a != b); System.out.println('a != b :'+ resultFlag); //o/p is true as 5 is not equal to 10 resultFlag = (a > b); System.out.println('a >b :'+ resultFlag); //o/p is false as 5 is not greater than 10 resultFlag = (a = b); System.out.println('a >= b:'+ resultFlag); //o/p is false as 5 neither greater than 10 nor equal to 10 } }
Тази програма отпечатва следния изход:
# 5) Условни оператори
Java поддържа условни оператори, || и && за извършване на операции Conditional-OR и Conditional-AND на два булеви операнда. Това поведение се нарича още поведение на „късо съединение“. При това поведение оценката на втория операнд се извършва само ако е необходимо.
Друг поддържан условен оператор е тернарният оператор ‘?:’, Който се извиква като стенограф за оператор if-then-else.
Оператор | Описание |
---|---|
&& | Условно-И |
|| | Условно-ИЛИ |
?: | Ternary (стенография за изявление if-then-else) |
По-долу е даден пример на Java, илюстриращ използването на условни оператори:
public class ConditionalOperatorDemo { public static void main(String() args) int a = 5; int b = 10; boolean resultFlag = ((a == 5) && (b == 10)); //o/p is true as both conditions are evaluated true System.out.println('a is 5 AND b is 10 :'+resultFlag); resultFlag = ((a == 5) }
Тази програма отпечатва следния изход:
# 6) Оператор за сравнение на типове
Оператор | Описание |
---|---|
instanceof | Сравнява обект с определен тип |
Целта на екземпляра на оператор е да сравнява обект с определен тип. Това може да се използва за тестване дали обектът е екземпляр на клас, подклас или клас, който реализира определен интерфейс.
Нека разгледаме следния пример на Java, илюстриращ използването на оператори за сравнение:
publicclass Shape {} public class Square extends Shape implements Area {} public interface Area {} publicclassInstanceofOperatorDemo { publicstaticvoidmain(String() args) { Shape shape1 = newShape(); Shape shape2 = newSquare(); System.out.println('shape1 instanceof Shape: ' + (shape1 instanceof Shape)); System.out.println('shape1 instanceof Square: ' + (shape1 instanceof Square)); System.out.println('shape1 instanceof Area:' + (shape1 instanceof Area)); System.out.println('shape2 instanceof Shape: ' + (shape2 instanceof Shape)); System.out.println('shape2 instanceof Square: ' + (shape2 instanceof Square)); System.out.println('shape2 instanceof Area: ' + (shape2 instanceof Area)); } }
Тази програма отпечатва следния изход:
# 7) Побитови и битови оператори за превключване
Java също така поддържа оператори за извършване на операции по битови и битови смени на който и да е от целочислените типове, т.е. long, int, short, char и byte.
Следват поддържаните оператори по битови и битови смени:
Оператор | Описание |
---|---|
~ | Еднозначно битово допълнение |
<< | Подписана лява смяна |
>> | Подписана дясна смяна |
>>> | Неподписана дясна смяна |
& | Побитово И |
^ | Изключително битово ИЛИ |
Нека да разгледаме следния пример на Java, който илюстрира използването на побитови оператори:
public class BitwiseOperatorDemo { public static void main(String() args) 0110 = 0111 = 7 System.out.println('x }
Тази програма отпечатва следния изход:
Предимство на Java оператора
Досега проучихме операторите, поддържани в Java. Сега нека да разгледаме предимството на тези оператори. Операторите са изброени според техния приоритет в низходящ ред в следващата таблица. Postfix има най-висок приоритет и възлагане е оператор с най-нисък приоритет.
модели на жизнения цикъл на софтуер за водопад
Значение на предимството: Оценката на операторите се извършва според приоритета на оператора, т.е. оценката се извършва, започвайки с операторите с по-висок приоритет и се следва от оператори, които имат относително по-нисък приоритет.
Всички двоични оператори се оценяват отляво надясно и единственото изключение са операторите за присвояване. В случай на оператори за възлагане, оценката на оператора се извършва отдясно наляво.
Предимство на оператора | ||
---|---|---|
Релационна | = instanceof | Отляво надясно |
Оператори | Предимство на операторите | Асоциативност |
Postfix | expr ++ expr-- | Отляво надясно |
Унар | ++ expr --expr + expr -expr ~! | От дясно на ляво |
Мултипликативни | * /% | Отляво надясно |
Добавка | + - | Отляво надясно |
Shift | <>>>> | Отляво надясно |
Равенство | ==! = | Отляво надясно |
Побитово И | & | Отляво надясно |
Изключително битово ИЛИ | ^ | Отляво надясно |
Побитово включващо ИЛИ | | | Отляво надясно |
логично И | && | Отляво надясно |
логично ИЛИ | || | Отляво надясно |
Тройка | ? : | От дясно на ляво |
Възлагане | = + = - = * = / =% = & = ^ = | =<>= >>> = | От дясно на ляво |
Често задавани въпроси и отговори
В # 1) Какви са операторите, които се използват в Java?
Отговори: Операторите в Java са специални символи. Целта на тези символи е да изпълняват специфични операции върху един, два или три операнда и да връщат резултат.
Например, символи като =,<, & , ^ etc .
В # 2) Какво е === Оператор в Java?
Отговори: === операторът се нарича строг оператор на равенство в Javascript . Този оператор връща true, ако и двете променливи са от един и същи тип и също съдържат една и съща стойност.
Например, 1 === ”1 ″ // Това ще се върне невярно . Това е така, защото и двата операнда не са от един и същи тип.
== оператор в Javascript сравнява две променливи от различен тип чрез автоматично преобразуване на един тип в друг.
Например, 1 == ”1 ″ Това ще се върне вярно. Тук низът се преобразува в число и се извършва сравнение.
В # 3) Какво представлява операторът за присвояване на Java?
Отговори: Оператор за присвояване на Java, т.е. операторът ‘=’ присвоява стойността отдясно на операнда отляво.
Например, инт х = 300; Тук ' = ’Присвоява стойност 300 към променлива х
В # 4) Какво е == в Java?
Отговори: == оператор в Java се използва за сравняване на препратка, т.е. този оператор проверява дали и двата обекта сочат към едно и също място в паметта
Това се различава в .equals (), което прави сравнението на стойностите в обектите.
Например,
String str1 = нов String („Добро утро“);
String str2 = нов String („Добро утро“);
System.out.println (str1 == str2); // Това връща false, тъй като сравнява адресите, т.е. местоположенията на паметта на два обекта
System.out.println (str1.equals (str2)); // Това връща true, когато сравнява стойността.
В # 5) Колко типа оператори има в Java?
Отговори: По-долу са изброени различните видове оператори в Java:
- Оператор за възлагане
- Аритметични оператори
- Унарни оператори
- Равенство и релационни оператори
- Условни оператори
- Тип оператор за сравнение
- Побитови и битови оператори за смяна
В # 6) Каква е ползата от Dot Operator в Java?
Отговори: Точковият оператор или разделител или период в Java се използва за разделяне на променлива, т.е.метода от референтна променлива на обект.
Например, Автомобил car1 = нов Car ();
car1.name = “Audi”; // Тук ‘.’ Се използва за достъп до полето ‘name’ на препратка към обект Car ‘car1’
В # 7) Кои са 3-те логически оператора?
Отговори: Логическите оператори работят върху булевия операнд.
Следват логическите оператори:
- &&: Логично И
- || : Логично ИЛИ
- ! : Логично Не
В # 8) Какво представляват битовите оператори в Java?
какви програми могат да отворят dwg файл
Отговори: Java поддържа оператори за извършване на битови операции и операции за смяна на битове на който и да е от целочислените типове, т.е. long, int, short, char и byte.
Следват поддържаните оператори по битови и битови смени:
Оператор | Описание |
---|---|
| | Побитово включващо ИЛИ |
~ | Еднозначно битово допълнение |
<< | Подписана лява смяна |
>> | Подписана дясна смяна |
>>> | Неподписана дясна смяна |
& | Побитово И |
^ | Изключително битово ИЛИ |
Заключение
В този урок разгледахме различните видове оператори, поддържани в Java, заедно с тяхното предназначение.
Накратко, Java операторите включват:
- Оператор за възлагане
- Аритметични оператори
- Унарни оператори
- Равенство и релационни оператори
- Условни оператори
- Тип оператор за сравнение
- Побитови и битови оператори за смяна
Също така видяхме как тези оператори се използват в Java кода с помощта на някои примери, илюстриращи използването на тези оператори. Въпреки че сме виждали всички видове оператори, използването на тези оператори в програмирането с общо предназначение може да варира в пъти.
Някои от операторите обикновено се появяват по-често от другите, като например операторът на присвояване '=' е много често използван в кода, отколкото неподписаният десен оператор на смяна '>>>
Ще видим подробно всяка от тези категории оператори в предстоящите ни уроци.
Препоръчително четене
- Примери за аритметични и булеви оператори на скрипт на Unix Shell
- Разполагане на Java: Създаване и изпълнение на Java JAR файл
- Java виртуална машина: Как JVM помага при стартирането на Java приложение
- Оператори на Python
- Модификатори на достъп в Java - Урок с примери
- Урок за отражение на Java с примери
- Въведение в езика за програмиране на Java - видео урок
- Урок за JAVA за начинаещи: 100+ практически ръководства за Java видео