Урок 2. Операции C#.
Вопросы
-
Перечислите арифметические операции, используемые в C#.
-
Какой тип данных используется для логической переменной?
-
Какой тип переменных используется с помощью объявления переменных
int, uint, long, ulong?.
Большинство операций языка C# аналогично операциям языков С и С++.
С# поддерживает следующие операции.
| Категория | Операция |
| Арифметические | + - * . % |
| Логические | & | ^ ~ && || ! |
| Конкатенация строк | + |
| Инкремент и декремент | ++ -- br> |
| Побитовый сдвиг | << >> |
| Сравнение | == != < > <= >= |
| присваивание | = += -= *= .= %= |= &= ^= <<= >>= |
| Индексирование для массивов | [] |
| Создание объектов | new |
| ulong | 64-битовое целое со знаком |
Сокращенная запись операций
Рассмотрим операции инкремента и декремента. выражения х++ и ++х эквивалентны
выражению х=х+1. Необходимо иметь ввиду, что если они используются в других выражениях, то ведут себя по-разному.
Префиксный оператор (++х) будет вычислен до того, как будет вычислено выражение.
Постфиксный оператор увеличивает значение х после вычисления выражения.
Приведем полный список сокращенных операторов С#:
| Сокращения | Полное представление операторов |
| х++, ++х | х = х + 1 |
| х--, --х | х = х - 1 |
| Конкатенация строк | + |
| x +=y | x = x + y br> |
| x -=y | x = x - y |
| x *=y | x = x * y |
| x /=y | x = x / y |
| x %=y | x = x % y |
| x >>=y | x = x >> y |
| x <<=y | x = x << y |
| x ^=y | x = x ^ y |
| x &=y | x = x & y |
| x |=y | x = x | y |
Приоритет операций
| Группа | Операция |
| Унарные | + - ! ~ ++Х --Х |
| Умножение/Деление | * / % |
| Сложение/Вычитание | + - |
| Операции побитового сдвига | << >> |
| Отношения | < > <= >= is |
| Сравнения | == != |
Оператор is
Оператор is позволяет проверить, совместим ли объект с определенным типом.
Рассмотрим пример, где переменная а имеет тип float. И она совместима с типом Object и float.
И несовместима с типом double и int.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _Совместимость
{
class Program
{
static void Main(string[] args)
{
float a=10.3F;
if (a is Object){
Console.WriteLine(" Переменная а типа Object");
}
if(a is float){
Console.WriteLine(" Переменная а типа Float");
}
if (a is double)
{
Console.WriteLine(" Переменная а типа Double");
}
if (a is int)
{
Console.WriteLine(" Переменная а типа Double");
}
Console.ReadLine();
}
}
}
В результате работы программы на экране будут выведены следующие сообщения:
Переменная а типа Object
Переменная а типа float
Задания