C # operatoriai: aritmetika, palyginimas, logika ir dar daugiau.

Š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 2ir 3yra 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 = 15
C # 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ų operatoriai
operatorius 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 ( trueir false) ir pateikia logines reikšmes. Loginiai operatoriai naudojami priimant sprendimus ir kilpas.

Štai kaip vertinamas loginių ANDir ORoperatorių rezultatas.

C # Loginiai operatoriai
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, ORoperatorius jį įvertins true.
  • Jei vienas iš operando yra klaidingas, ANDoperatorius jį įvertins false.

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 operatoriai
operatorius 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 trueiš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“ operatoriai
operatorius 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 operatoriai
operatorius 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.

Įdomios straipsniai...