logo

C# | Operatorzy

Operatory są podstawą każdego języka programowania. Zatem funkcjonalność C# język jest niekompletny bez użycia operatorów. Operatory pozwalają nam wykonywać różnego rodzaju operacje na operandy . W C# , operatory Można kategoryzować na podstawie są różne funkcjonalność :

W języku C# operatory można również kategoryzować na podstawie liczby operandów:

  • Operator jednoargumentowy: Operator, który bierze jeden operand umożliwiający wykonanie operacji.
  • Operator binarny: Operator, który bierze dwa operandy umożliwiające wykonanie operacji.
  • Operator trójskładnikowy: Operator, który bierze trzy operandy umożliwiające wykonanie operacji.

Operatory arytmetyczne



eksport gimp jako jpg

Służą do wykonywania operacji arytmetycznych/matematycznych na operandach. The Operatory binarne mieszczące się w tej kategorii to:

  • Dodatek: The „+” operator dodaje dwa operandy. Na przykład, x+y .
  • Odejmowanie: The „-” operator odejmuje dwa operandy. Na przykład, x-y .
  • Mnożenie: The „*” operator mnoży dwa operandy. Na przykład, x*y .
  • Dział: The „/” operator dzieli pierwszy operand przez drugi. Na przykład, x/y .
  • Moduł: The „%” operator zwraca resztę, gdy pierwszy operand jest dzielony przez drugi. Na przykład, x%y .

Przykład:

C#
// C# program to demonstrate the working  // of Binary Arithmetic Operators using System; namespace Arithmetic {  class GFG  {    // Main Function  static void Main(string[] args)  {    int result;  int x = 10, y = 5;    // Addition  result = (x + y);  Console.WriteLine('Addition Operator: ' + result);    // Subtraction  result = (x - y);  Console.WriteLine('Subtraction Operator: ' + result);    // Multiplication  result = (x * y);  Console.WriteLine('Multiplication Operator: '+ result);    // Division  result = (x / y);  Console.WriteLine('Division Operator: ' + result);    // Modulo  result = (x % y);  Console.WriteLine('Modulo Operator: ' + result);  }  } }>

Wyjście:

Addition Operator: 15 Subtraction Operator: 5 Multiplication Operator: 50 Division Operator: 2 Modulo Operator: 0>

Te, które należą do kategorii Operatory jednoargumentowe Czy:

  • Przyrost: The „++” operator służy do zwiększania wartości liczby całkowitej. Po umieszczeniu przed nazwą zmiennej (tzw wstępna inkrementacja operator), jego wartość jest natychmiast zwiększana. Na przykład, ++x .
    A kiedy zostanie umieszczony po nazwie zmiennej (tzw operator postinkrementacyjny ), jego wartość jest tymczasowo zachowywana do czasu wykonania tej instrukcji i jest aktualizowana przed wykonaniem kolejnej instrukcji. Na przykład, x++ .
  • Zmniejszenie: The „--” operator służy do zmniejszania wartości liczby całkowitej. Po umieszczeniu przed nazwą zmiennej (tzw operator wstępnej dekrementacji ), jego wartość jest natychmiast zmniejszana. Na przykład, - -X .
    A kiedy zostanie umieszczony po nazwie zmiennej (tzw operator postdekrementacyjny ), jego wartość jest tymczasowo zachowywana do czasu wykonania tej instrukcji i jest aktualizowana przed wykonaniem kolejnej instrukcji. Na przykład, X- - .

Przykład:

C#
// C# program to demonstrate the working  // of Unary Arithmetic Operators using System; namespace Arithmetic {    class GFG {    // Main Function  static void Main(string[] args)  {    int a = 10, res;    // post-increment example:  // res is assigned 10 only,   // a is not updated yet  res = a++;    //a becomes 11 now  Console.WriteLine('a is {0} and res is {1}', a, res);      // post-decrement example:  // res is assigned 11 only, a is not updated yet  res = a--;    //a becomes 10 now  Console.WriteLine('a is {0} and res is {1}', a, res);       // pre-increment example:  // res is assigned 11 now since a  // is updated here itself  res = ++a;    // a and res have same values = 11  Console.WriteLine('a is {0} and res is {1}', a, res);      // pre-decrement example:  // res is assigned 10 only since  // a is updated here itself  res = --a;    // a and res have same values = 10  Console.WriteLine('a is {0} and res is {1}',a, res);       }  } }>

Wyjście:

a is 11 and res is 10 a is 10 and res is 11 a is 11 and res is 11 a is 10 and res is 10>

Operatorzy relacyjni

Operatory relacji służą do porównywania dwóch wartości. Zobaczmy je jeden po drugim:

  • „==” (równe) operator sprawdza, czy dwa podane operandy są równe, czy nie. Jeśli tak, zwraca wartość true. W przeciwnym razie zwraca wartość false. Na przykład, 5==5 zwróci prawdę.
  • „!=”(Nierówny) operator sprawdza, czy dwa podane operandy są równe, czy nie. Jeśli nie, zwraca wartość true. W przeciwnym razie zwraca wartość false. Jest to dokładne uzupełnienie logiczne funkcji „==” operator. Na przykład, 5!=5 zwróci fałsz.
  • „>” (Większy niż) operator sprawdza, czy pierwszy operand jest większy niż drugi operand. Jeśli tak, zwraca wartość true. W przeciwnym razie zwraca wartość false. Na przykład, 6>5 zwróci prawdę.
  • „<” (mniej niż) operator sprawdza, czy pierwszy operand jest mniejszy niż drugi operand. Jeśli tak, zwraca wartość true. W przeciwnym razie zwraca wartość false. Na przykład, 6<5 zwróci fałsz.
  • „>=”(Większy niż równy) Operator sprawdza, czy pierwszy operand jest większy lub równy drugiemu operandowi. Jeśli tak, zwraca wartość true. W przeciwnym razie zwraca wartość false. Na przykład, 5>=5 zwróci prawdę.
  • „<=” (mniejsze niż równe) operator sprawdza, czy pierwszy operand jest mniejszy lub równy drugiemu operandowi. Jeśli tak, zwraca wartość true. W przeciwnym razie zwraca wartość false. Na przykład, 5<=5 również zwróci wartość true.

Przykład:

C#
// C# program to demonstrate the working  // of Relational Operators using System; namespace Relational {   class GFG {    // Main Function  static void Main(string[] args)  {  bool result;  int x = 5, y = 10;    // Equal to Operator  result = (x == y);  Console.WriteLine('Equal to Operator: ' + result);    // Greater than Operator  result = (x>y);  Console.WriteLine('Operator większy niż: ' + wynik);    // Wynik operatora mniejszy niż = (x< y);  Console.WriteLine('Less than Operator: ' + result);    // Greater than Equal to Operator  result = (x>= y);  Console.WriteLine('Większy lub równy: '+ wynik);    // Mniej niż równy wynik operatora = (x<= y);  Console.WriteLine('Lesser than or Equal to: '+ result);    // Not Equal To Operator  result = (x != y);  Console.WriteLine('Not Equal to Operator: ' + result);  } } }>

Wyjście:

Equal to Operator: False Greater than Operator: False Less than Operator: True Greater than or Equal to: False Lesser than or Equal to: True Not Equal to Operator: True>

Operatory logiczne

Służą do łączenia dwóch lub więcej warunków/ograniczeń lub do uzupełnienia oceny pierwotnego warunku. Są one opisane poniżej:

  • Logiczne ORAZ: The „&&” operator zwraca wartość true, gdy oba rozważane warunki są spełnione. W przeciwnym razie zwraca wartość false. Na przykład, a && b zwraca wartość true, gdy zarówno a, jak i b są prawdziwe (tj. niezerowe).
  • Logiczne LUB: The „||” operator zwraca wartość true, gdy spełniony jest jeden (lub oba) rozważane warunki. W przeciwnym razie zwraca wartość false. Na przykład, || B zwraca wartość true, jeśli jedno z a lub b jest prawdziwe (tj. niezerowe). Oczywiście zwraca wartość true, jeśli zarówno a, jak i b są prawdziwe.
  • Logiczne NIE: The „!” operator zwraca wartość true, rozważany warunek nie jest spełniony. W przeciwnym razie zwraca wartość false. Na przykład, !A zwraca wartość true, jeśli a jest fałszywe, tj. gdy a=0.

Przykład:

C#
// C# program to demonstrate the working  // of Logical Operators using System; namespace Logical {   class GFG {    // Main Function  static void Main(string[] args)   } }>

Wyjście:

10 ml na uncje
AND Operator: False OR Operator: True NOT Operator: False>

Operatory bitowe

W języku C# istnieje 6 operatorów bitowych, które działają na poziomie bitów lub służą do wykonywania operacji bit po bicie. Poniżej znajdują się operatory bitowe:

  • & (bitowe AND) Przyjmuje dwie liczby jako argumenty i wykonuje operację ORAZ na każdym bicie dwóch liczb. Wynikiem AND jest 1 tylko wtedy, gdy oba bity mają wartość 1.
  • | (bitowe LUB) Przyjmuje dwie liczby jako argumenty i wykonuje operację OR na każdym bicie dwóch liczb. Wynikiem OR jest 1, którykolwiek z dwóch bitów ma wartość 1.
  • ^ (bitowy XOR) Przyjmuje dwie liczby jako argumenty i wykonuje XOR na każdym bicie dwóch liczb. Wynikiem XOR jest 1, jeśli dwa bity są różne.
  • ~ (bitowe uzupełnienie) Przyjmuje jedną liczbę jako argument i odwraca każdy bit, czyli 1 na 0 i 0 na 1.
  • << (przesunięcie w lewo) Pobiera dwie liczby, w lewo przesuwa bity pierwszego operandu, drugi operand decyduje o liczbie miejsc do przesunięcia.
  • >> (przesunięcie w prawo) Pobiera dwie liczby, przesuwa w prawo bity pierwszego operandu, drugi operand decyduje o liczbie miejsc do przesunięcia.

Przykład:

C#
// C# program to demonstrate the working  // of Bitwise Operators using System; namespace Bitwise {   class GFG {    // Main Function  static void Main(string[] args)    int x = 5, y = 10, result;    // Bitwise AND Operator  result = x & y;  Console.WriteLine('Bitwise AND: ' + result);    // Bitwise OR Operator  result = x  } }>

Wyjście:

Bitwise AND: 0 Bitwise OR: 15 Bitwise XOR: 15 Bitwise Complement: -6 Bitwise Left Shift: 20 Bitwise Right Shift: 1>

Operatory przypisania

Operatory przypisania służą do przypisywania wartości zmiennej. Lewy operand operatora przypisania jest zmienną, a prawy operand operatora przypisania jest wartością. Wartość po prawej stronie musi mieć ten sam typ danych co zmienna po lewej stronie, w przeciwnym razie kompilator zgłosi błąd.

Poniżej przedstawiono różne typy operatorów przypisania:

  • =(Proste zadanie) : To najprostszy operator przypisania. Operator ten służy do przypisania wartości po prawej stronie zmiennej po lewej stronie.
    Przykład:
a = 10; b = 20; ch = 'y';>
  • +=(Dodaj zadanie) : Ten operator jest kombinacją operatorów „+” i „=”. Operator ten najpierw dodaje bieżącą wartość zmiennej po lewej stronie do wartości po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a += b) can be written as (a = a + b)>

Jeśli początkowo wartość przechowywana w a wynosi 5. Wtedy (a += 6) = 11.

  • -=(Odejmij zadanie) : Ten operator jest kombinacją operatorów „-” i „=”. Operator ten najpierw odejmuje bieżącą wartość zmiennej po lewej stronie od wartości po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a -= b) can be written as (a = a - b)>

Jeśli początkowo wartość przechowywana w a wynosi 8. Wtedy (a -= 6) = 2.

  • *=(Pomnóż przypisanie) : Ten operator jest kombinacją operatorów „*” i „=”. Operator ten najpierw mnoży bieżącą wartość zmiennej po lewej stronie przez wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a *= b) can be written as (a = a * b)>

Jeśli początkowo wartość przechowywana w a wynosi 5. Wtedy (a *= 6) = 30.

  • /=(Przypisanie dywizji): Ten operator jest kombinacją operatorów „/” i „=”. Operator ten najpierw dzieli bieżącą wartość zmiennej po lewej stronie przez wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a /= b) can be written as (a = a / b)>

Jeśli początkowo wartość przechowywana w a wynosi 6. Wtedy (a /= 2) = 3.

  • %=(Przypisanie modułu): Ten operator jest kombinacją operatorów „%” i „=”. Operator ten najpierw moduluje bieżącą wartość zmiennej po lewej stronie przez wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a %= b) can be written as (a = a % b)>

Jeśli początkowo wartość przechowywana w a wynosi 6. Wtedy (a%= 2) = 0.

  • <<=(Przypisanie lewego Shift) : Ten operator jest kombinacją operatorów „<<” i „=”. Operator ten najpierw przesuwa w lewo bieżącą wartość zmiennej po lewej stronie o wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a <<= 2) can be written as (a = a << 2)>

Jeśli początkowo wartość przechowywana w a wynosi 6. Wtedy (a <<= 2) = 24.

  • >>=(Przypisanie prawego Shift) : Ten operator jest kombinacją operatorów „>>” i „=”. Operator ten najpierw przesuwa w prawo bieżącą wartość zmiennej po lewej stronie o wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a>>= 2) można zapisać jako (a = a>> 2)>

Jeśli początkowo wartość przechowywana w a wynosi 6. Wtedy (a>>= 2) = 1.

  • &=(Przypisanie bitowe ORAZ) : Ten operator jest kombinacją operatorów „&” i „=”. Operator ten najpierw Bitwise AND bieżącą wartość zmiennej po lewej stronie przez wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a &= 2) can be written as (a = a & 2)>

Jeśli początkowo wartość przechowywana w a wynosi 6. Wtedy (a &= 2) = 2.

  • ^=(bitowo wyłączne LUB) : Ten operator jest kombinacją operatorów „^” i „=”. Ten operator najpierw Bitwise Exclusive OR bieżąca wartość zmiennej po lewej stronie przez wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład:
(a ^= 2) can be written as (a = a ^ 2)>

Jeśli początkowo wartość przechowywana w a wynosi 6. Wtedy (a ^= 2) = 4.

  • |=(bitowo włącznie OR) : Ten operator jest kombinacją operatorów „|” i „=”. Operator ten najpierw Bitwise Inclusive OR bieżąca wartość zmiennej po lewej stronie przez wartość po prawej stronie, a następnie przypisuje wynik do zmiennej po lewej stronie.
    Przykład :
(a |= 2) can be written as (a = a | 2)>

Jeśli początkowo wartość przechowywana w a wynosi 6. Następnie (a |= 2) = 6.

Przykład:

C#
// C# program to demonstrate the working  // of Assignment Operators using System; namespace Assignment {   class GFG {    // Main Function  static void Main(string[] args)  = 4;   Console.WriteLine('Bitwise Inclusive OR Assignment Operator: ' + x);     } }>

Wyjście :

Add Assignment Operator: 25 Subtract Assignment Operator: 15 Multiply Assignment Operator: 75 Division Assignment Operator: 5 Modulo Assignment Operator: 0 Left Shift Assignment Operator: 32 Right Shift Assignment Operator: 2 Bitwise AND Assignment Operator: 4 Bitwise Exclusive OR Assignment Operator: 8 Bitwise Inclusive OR Assignment Operator: 12>

Operator warunkowy

Jest to operator trójskładnikowy będący skróconą wersją instrukcji if-else. Ma trzy operandy i stąd nazwa trójskładnikowa. Zwróci jedną z dwóch wartości w zależności od wartości wyrażenia logicznego.

Składnia:

condition ? first_expression : second_expression;>

Wyjaśnienie:
warunek: musi zostać oceniony jako prawdziwy lub fałszywy.
Jeśli warunek jest prawdziwy
First_expression jest oceniane i staje się wynikiem.
Jeśli warunek jest fałszywy,
drugie_wyrażenie jest oceniane i staje się wynikiem.

główna metoda Java

Przykład:

C#
// C# program to demonstrate the working  // of Conditional Operator using System; namespace Conditional {   class GFG {    // Main Function  static void Main(string[] args)  {  int x = 5, y = 10, result;    // To find which value is greater  // Using Conditional Operator  result = x>ty? x: y;     // Aby wyświetlić wynik Console.WriteLine('Wynik: ' + wynik);    // Aby dowiedzieć się, która wartość jest większa // Używając operatora warunkowego wynik = x< y ? x : y;     // To display the result  Console.WriteLine('Result: ' + result);  } } }>

Wyjście :

Result: 10 Result: 5>