Šiame straipsnyje mes sužinosime viską apie skirtingus operatorius C # programavimo kalba ir kaip juos naudoti.
Operatoriai yra simboliai, naudojami operandams atlikti. Operandai gali būti kintamieji ir (arba) konstantos.
Pavyzdžiui , į 2+3
, +
yra operatorius, kuris naudojamas atlikti papildymus operaciją, o 2
ir 3
yra operandai.
Operatoriai naudojami manipuliuoti kintamaisiais ir reikšmėmis programoje. C # palaiko daugelį operatorių, kurie klasifikuojami pagal jų atliekamų operacijų tipą.
1. Pagrindinės užduoties operatorius
Pagrindinis priskyrimo operatorius (=) naudojamas priskirti reikšmes kintamiesiems. Pavyzdžiui,
dvigubas x; x = 50,05;
Čia 50,05 priskiriama x.
1 pavyzdys: pagrindinis priskyrimo operatorius
using System; namespace Operator ( class AssignmentOperator ( public static void Main(string() args) ( int firstNumber, secondNumber; // Assigning a constant to variable firstNumber = 10; Console.WriteLine("First Number = (0)", firstNumber); // Assigning a variable to another variable secondNumber = firstNumber; Console.WriteLine("Second Number = (0)", secondNumber); ) ) )
Kai vykdysime programą, išvestis bus:
Pirmasis skaičius = 10 Antrasis skaičius = 10
Tai yra paprastas pavyzdys, parodantis priskyrimo operatoriaus naudojimą.
Galbūt pastebėjote ( )
, kad pavyzdyje naudojami garbanoti skliaustai . Aptarsime apie juos eilutės formatu. Kol kas nepamirškite, kad (0)
tai pakeičia pirmas kintamasis, einantis po eilutės, (1)
pakeičiamas antruoju kintamuoju ir pan.
2. Aritmetiniai operatoriai
Aritmetiniai operatoriai naudojami atliekant aritmetines operacijas, tokias kaip sudėjimas, atimimas, dauginimas, dalijimas ir kt.
Pavyzdžiui,
int x = 5; int y = 10; int z = x + y; // z = 15C # Aritmetiniai operatoriai
operatorius | Operatoriaus vardas | Pavyzdys |
---|---|---|
+ | Papildymo operatorius | 6 + 3 įvertina 9 |
- | Atimties operatorius | 10 - 6 vertina iki 4 |
* | Daugybos operatorius | 4 * 2 įvertina iki 8 |
/ | Skyriaus operatorius | 10/5 vertina iki 2 |
% | „Modulo Operator“ (likusi dalis) | 16% 3 vertina 1 |
2 pavyzdys: Aritmetikos operatoriai
using System; namespace Operator ( class ArithmeticOperator ( public static void Main(string() args) ( double firstNumber = 14.40, secondNumber = 4.60, result; int num1 = 26, num2 = 4, rem; // Addition operator result = firstNumber + secondNumber; Console.WriteLine("(0) + (1) = (2)", firstNumber, secondNumber, result); // Subtraction operator result = firstNumber - secondNumber; Console.WriteLine("(0) - (1) = (2)", firstNumber, secondNumber, result); // Multiplication operator result = firstNumber * secondNumber; Console.WriteLine("(0) * (1) = (2)", firstNumber, secondNumber, result); // Division operator result = firstNumber / secondNumber; Console.WriteLine("(0) / (1) = (2)", firstNumber, secondNumber, result); // Modulo operator rem = num1 % num2; Console.WriteLine("(0) % (1) = (2)", num1, num2, rem); ) ) )
Kai vykdysime programą, išvestis bus:
14,4 + 4,6 = 19 14,4 - 4,6 = 9,8 14,4 * 4,6 = 66,24 14,4 / 4,6 = 3,1304347826087 26% 4 = 2
Aritmetinės operacijos atliekamos aukščiau pateiktame pavyzdyje. Kintamuosius teiginiuose galima pakeisti konstantomis. Pavyzdžiui,
rezultatas = 4,5 + 2,7; // rezultatas atitiks 7,2 rezultatą = firstNumber - 3,2; // rezultatas laikysis 11,2
3. Santykiniai operatoriai
Reliaciniai operatoriai naudojami tikrinant dviejų operandų santykį. Jei santykiai teisingi, rezultatas bus true
, priešingu atveju tai bus false
.
Reliaciniai operatoriai naudojami priimant sprendimus ir kilpas.
C # santykių operatoriaioperatorius | Operatoriaus vardas | Pavyzdys |
---|---|---|
== | Lygus | 6 == 4 vertina klaidingai |
> | Geresnis negu | 3> -1 vertinama kaip teisinga |
< | Mažiau nei | 5 <3 vertina kaip klaidingą |
> = | Didesnis arba lygus | 4> = 4 vertina tiesą |
<= | Mažesnis arba lygus | 5 <= 3 vertina kaip klaidingą |
! = | Nelygu | 10! = 2 vertina tiesą |
3 pavyzdys: Ryšių operatoriai
using System; namespace Operator ( class RelationalOperator ( public static void Main(string() args) ( bool result; int firstNumber = 10, secondNumber = 20; result = (firstNumber==secondNumber); Console.WriteLine("(0) == (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber> secondNumber); Console.WriteLine("(0)> (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber < secondNumber); Console.WriteLine("(0) = secondNumber); Console.WriteLine("(0)>= (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber <= secondNumber); Console.WriteLine("(0) <= (1) returns (2)",firstNumber, secondNumber, result); result = (firstNumber != secondNumber); Console.WriteLine("(0) != (1) returns (2)",firstNumber, secondNumber, result); ) ) )
Kai vykdysime programą, išvestis bus:
10 == 20 pateikia klaidingą 10> 20 grąžina klaidingą 10 = 20 grąžina klaidingą 10 <= 20 grąžina tiesą 10! = 20 grąžina teisingą
4. Loginiai operatoriai
Loginiai operatoriai naudojami atlikti loginę operaciją pavyzdžiui and
, or
. Loginiai operatoriai veikia pagal logines išraiškas ( true
ir false
) ir pateikia logines reikšmes. Loginiai operatoriai naudojami priimant sprendimus ir kilpas.
Štai kaip vertinamas loginių AND
ir OR
operatorių rezultatas.
Operandas 1 | Operandas 2 | ARBA (||) | IR (&&) |
---|---|---|---|
tiesa | tiesa | tiesa | tiesa |
tiesa | melagingas | tiesa | melagingas |
melagingas | tiesa | tiesa | melagingas |
melagingas | melagingas | melagingas | melagingas |
Paprastais žodžiais lentelę galima apibendrinti taip:
- Jei vienas iš operando yra teisingas,
OR
operatorius jį įvertinstrue
. - Jei vienas iš operando yra klaidingas,
AND
operatorius jį įvertinsfalse
.
4 pavyzdys: loginiai operatoriai
using System; namespace Operator ( class LogicalOperator ( public static void Main(string() args) ( bool result; int firstNumber = 10, secondNumber = 20; // OR operator result = (firstNumber == secondNumber) || (firstNumber> 5); Console.WriteLine(result); // AND operator result = (firstNumber == secondNumber) && (firstNumber> 5); Console.WriteLine(result); ) ) )
Kai vykdysime programą, išvestis bus:
Tiesa Netiesa
5. „Unary“ operatoriai
Skirtingai nuo kitų operatorių, vienarūšiai operatoriai veikia viename operande.
C # vienarūšiai operatoriaioperatorius | Operatoriaus vardas | apibūdinimas |
---|---|---|
+ | „Unary Plus“ | Palieka operando ženklą tokį, koks jis yra |
- | Unary Minus | Apvers operando ženklą |
++ | Prieaugis | Padidėjimo vertė 1 |
- | Sumažėjimas | Sumažinimo vertė 1 |
! | Loginis neigimas (ne) | Apverčia loginės reikšmės vertę |
5 pavyzdys: „Unary“ operatoriai
using System; namespace Operator ( class UnaryOperator ( public static void Main(string() args) ( int number = 10, result; bool flag = true; result = +number; Console.WriteLine("+number = " + result); result = -number; Console.WriteLine("-number = " + result); result = ++number; Console.WriteLine("++number = " + result); result = --number; Console.WriteLine("--number = " + result); Console.WriteLine("!flag = " + (!flag)); ) ) )
Kai vykdysime programą, išvestis bus:
+ skaičius = 10-skaičius = -10 ++ skaičius = 11 - skaičius = 10! vėliava = klaidinga
Prieaugio (++)
ir mažinimo (--)
operatoriai gali būti naudojami kaip priešdėlis ir postfiksas. Jei naudojamas kaip priešdėlis, kintamojo vertės pokytis matomas toje pačioje eilutėje, o jei naudojamas kaip postfiksas, kintamojo vertės pokytis matomas kitoje eilutėje. Tai bus aišku pateikiant žemiau pateiktą pavyzdį.
6 pavyzdys: pašto ir išankstinio prieaugio operatoriai C #
using System; namespace Operator ( class UnaryOperator ( public static void Main(string() args) ( int number = 10; Console.WriteLine((number++)); Console.WriteLine((number)); Console.WriteLine((++number)); Console.WriteLine((number)); ) ) )
Kai vykdysime programą, išvestis bus:
10 11 12 12
We can see the effect of using ++
as prefix and postfix. When ++
is used after the operand, the value is first evaluated and then it is incremented by 1
. Hence the statement
Console.WriteLine((number++));
prints 10
instead of 11
. After the value is printed, the value of number is incremented by 1
.
The process is opposite when ++
is used as prefix. The value is incremented before printing. Hence the statement
Console.WriteLine((++number));
prints 12
.
The case is same for decrement operator (--)
.
6. Ternary Operator
The ternary operator ? :
operates on three operands. It is a shorthand for if-then-else
statement. Ternary operator can be used as follows:
variable = Condition? Expression1 : Expression2;
Trikampis operatorius dirba taip:
- Jei sąlygoje nurodyta
true
išraiška yra, 1 išraiškos rezultatas priskiriamas kintamajam. - Jei taip
false
, „Expression2“ rezultatas priskiriamas kintamajam.
7 pavyzdys: trijų komponentų operatorius
using System; namespace Operator ( class TernaryOperator ( public static void Main(string() args) ( int number = 10; string result; result = (number % 2 == 0)? "Even Number" : "Odd Number"; Console.WriteLine("(0) is (1)", number, result); ) ) )
Kai vykdysime programą, išvestis bus:
10 yra lyginis skaičius
Norėdami sužinoti daugiau, apsilankykite C # trijų komponentų operatoriuje.
7. „Bitwise“ ir „Bit Shift“ operatoriai
Bitų manipuliavimo operacijoms atlikti naudojami bitų ir bitų poslinkio operatoriai.
C # „Bitwise“ ir „Bit Shift“ operatoriaioperatorius | Operatoriaus vardas |
---|---|
~ | Bitų papildymas |
& | Bitais IR |
| | ARBA bitais |
^ | Išskirtinis ARBA |
<< | Kairysis kairysis poslinkis |
>> | Dešiniuoju poslinkiu į dešinę |
8 pavyzdys: Operatorius „Bitwise“ ir „Bit Shift“
using System; namespace Operator ( class BitOperator ( public static void Main(string() args) ( int firstNumber = 10; int secondNumber = 20; int result; result = ~firstNumber; Console.WriteLine("~(0) = (1)", firstNumber, result); result = firstNumber & secondNumber; Console.WriteLine("(0) & (1) = (2)", firstNumber,secondNumber, result); result = firstNumber | secondNumber; Console.WriteLine("(0) | (1) = (2)", firstNumber,secondNumber, result); result = firstNumber secondNumber; Console.WriteLine("(0) (1) = (2)", firstNumber,secondNumber, result); result = firstNumber << 2; Console.WriteLine("(0) <> 2; Console.WriteLine("(0)>> 2 = (1)", firstNumber, result); ) ) )
Kai vykdysime programą, išvestis bus:
~ 10 = -11 10 ir 20 = 0 10 | 20 = 30 10 20 = 30 10 <> 2 = 2
Norėdami sužinoti daugiau, apsilankykite C # Bitwise ir Bit Shift operatoriuje.
8. Sudėtinių užduočių operatoriai
C # junginio priskyrimo operatoriaioperatorius | Operatoriaus vardas | Pavyzdys | Lygiavertis |
---|---|---|---|
+ = | Papildymo priskyrimas | x += 5 | x = x + 5 |
- = | Atimties užduotis | x -= 5 | x = x - 5 |
* = | Daugybos užduotis | x *= 5 | x = x * 5 |
/ = | Divizijos užduotis | x /= 5 | x = x / 5 |
% = | „Modulo“ užduotis | x %= 5 | x = x % 5 |
& = | Bitų IR PRiskyrimas | x &= 5 | x = x & 5 |
| = | ARBA priskyrimas | x |= 5 | x = x | 5 |
= | XOR priskyrimas bitais | x ^= 5 | x = x 5 |
<< = | Kairės poslinkio užduotis | x <<= 5 | x = x << 5 |
>> = | Dešiniojo poslinkio užduotis | x>>= 5 | x = x>> 5 |
=> | „Lambda“ operatorius | x => x*x | Returns x*x |
9 pavyzdys: junginio priskyrimo operatorius
using System; namespace Operator ( class BitOperator ( public static void Main(string() args) ( int number = 10; number += 5; Console.WriteLine(number); number -= 3; Console.WriteLine(number); number *= 2; Console.WriteLine(number); number /= 3; Console.WriteLine(number); number %= 3; Console.WriteLine(number); number &= 10; Console.WriteLine(number); number |= 14; Console.WriteLine(number); number ^= 12; Console.WriteLine(number); number <>= 3; Console.WriteLine(number); ) ) )
Kai vykdysime programą, išvestis bus:
15 12 24 8 2 2 14 2 8 1
Apie „Lambda“ operatorius aptarsime vėlesnėje pamokoje.