Мои поездки продолжаются, как и мое (джедайское) обучение. В разделе Основные концепции учебного пособия по C # в приложении SoloLearn есть еще пять разделов, которые я просмотрел и которые я хотел бы определить здесь.

  • Во-первых, они говорят о комментариях или комментариях. Я формулирую его в этих двух формах, потому что на самом деле он используется для двух целей: во-первых, как следует из названия, он используется для добавления заметок о коде, чтобы, когда другие его просматривали, они могли см. описания того, что происходит в конкретном месте программы. Также, однако, поскольку компиляция приложения (то есть преобразование его из написанного вами кода на язык, понятный компьютеру) полностью игнорирует прокомментировал строк кода, вы можете использовать эту функцию, чтобы часть кода не запускалась. Это также полезно, когда вы пытаетесь найти конкретную строку кода, вызывающую ошибку. Чтобы использовать функцию комментариев в одной строке кода, вы помещаете две косые черты в ее начало, например:
//Prints Hello
Console.WriteLine(“Hello”);

Если вы хотите использовать его для нескольких строк кода, вы помещаете косую черту, за которой следует звездочка перед первой строкой кода, которая будет включена, а затем звездочка, за которой следует косая черта в конце последней строки кода, который вы хотите включить, например:

/* Some long
Comment text
*/
int x = 42;
Console.WriteLine(x);
  • Затем он проходит через var ключевое слово. Это еще одно из этих преимуществ в том, что, хотя обычно вам нужно объявить тип данных переменной перед ее использованием, ключевое слово var в основном сообщает компилятор сам определит, какой тип данных использовать, просмотрев присвоенное значение. В следующем примере компилятор видит значение, присвоенное переменной num как целое число, и автоматически устанавливает для него тип данных значение целое:
var num = 15;

Однако важно знать, что если вы собираетесь использовать ключевое слово var, вы должны ввести значение одновременно с созданием самой переменной. Другими словами, если я создам переменную, , а затем присвою ей значение (как в следующем примере), это приведет к ошибке.

var num;
num = 42;
  • После этого они довольно хорошо объяснили, что такое константа. Это просто приводит к тому, что значение, изначально присвоенное переменной, становится неизменным. Написано это так:
const double PI = 3.14

Если вы попытаетесь переназначить переменной PI новое значение позже другой строкой кода, например:

PI = 8;

… Возникает ошибка.

  • Затем было подробное объяснение арифметических операторов. Другими словами… математика. Пять, через которые они проходят:
  • Дополнение, в котором используется символ +,
  • Вычитание, в котором используется символ -,
  • Умножение, в котором используется символ *,
  • Подразделение, в котором используется символ /, и
  • Модуль, в котором используется символ %.

Помимо модуля, в этом не было ничего нового в математике (по крайней мере, для меня), и они показали, что это написано так:

int x = 10;
int y = 4;
Console.WriteLine(x-y);

… И это дает результирующее значение 6. Чтобы написать приведенный выше код на английском языке:

  • Создается переменная с именем x, тип данных которой установлен на integer, и ей присваивается значение 10.
  • Создается переменная с именем y, тип данных которой установлен на integer, и ей присваивается значение 4.
  • Запишите в окно консоли результирующее значение переменной x (10), минус значение y (4), в результате чего будет 6 .

Однако важным моментом в отношении деления является то, что когда вы используете его в своем коде (с помощью оператора /), тег остаток (если есть) отбрасывается. Так, например, хотя оставшаяся часть 10/3 будет 1, результирующее значение здесь будет просто 3 (в отличие от 3 R 1). Тем не менее, именно здесь в игру вступает модуль (в котором используется символ %) с использованием модуля будет иметь результирующее значение только остаток. Итак, в том же примере 10/3 результирующее значение будет 1.

И последнее, что важно отметить в отношении арифметических операторов, - это то, что они называют приоритетом операторов. Это понятие очень похоже на то, что вы, вероятно, изучали в школе, и называется порядком операций. Помните PEMDAS, или Пожалуйста, извините, моя дорогая тетя Салли, или круглые скобки, показатели, умножьте , разделить, добавить и вычесть… В ЭТОМ КОНКРЕТНОМ ПОРЯДКЕ? Хотя C # также оценивает то, что указано в круглых скобках первым, после этого (или, если скобок нет), он оценивает это таким образом :

  1. Мультипликативный (умножение, деление, модуль)
  2. Сложение (сложение, вычитание)

Когда есть операторы равного приоритета, он оценивает их слева направо. Таким образом, результирующее значение следующего равно 10:

int x = 4+3*2; (first it does 3 times 2 (6), and then it adds 4)

… По сравнению с результирующим значением 14:

int x = (4+3)*2; (first it does 4 plus 3 (7), and then it multiplies that times 2)
  • Наконец, это как бы прыжок назад, чтобы объяснить то, что мы уже использовали, но они не хотели просто предполагать, что все поняли: операторы присваивания. Это описывает объект, который присваивает значение правой части переменной слева. Мы использовали символ =, например,
int x = 42;

Также существует так называемый оператор составного присваивания, который является еще одним из этих эффективных. По сути, он выполняет и операцию, и назначение за один раз, как показано ниже:

x += 2; is the equivalent of saying x = x + 2
x -= 6; is the equivalent of saying x = x — 6

И это также работает для операторов умножения, деления и модуля, как показано ниже:

x *= 8; is the equivalent of saying x = x * 8
x /= 5; is the equivalent of saying x = x / 5
x %= 2; is the equivalent of saying x = x % 2

Еще одна аналогичная эффективность - это оператор приращения, который по умолчанию увеличивает значение целого числа на единицу, как показано ниже:

int x = 10;
x++;

Вторая строка кода является эквивалентом выражения x = x + 1 (и, чтобы повторить это с установленным значением, x = 10 + 1, что дает 11).

Это пошло еще дальше, и это была одна из вещей, которую я не полностью понял во время первого обхода, когда оператор приращения может принимать префикс или постфиксная форма. В этом разница между написанием кода как:

++x; which is prefix
x++; which is postfix

Префикс означает, что значение увеличивается на единицу, и затем продолжается с выражением. Postfix означает, что выражение вычисляется, и затем увеличивается на единицу. Другими словами, следующее - это префикс пример:

int x = 3;
int y = ++x;

На английском языке вторая строка кода гласит: увеличить значение x на ПЕРВОЕ значение на единицу, , а затем присвоить это значение y. Итак, x увеличивается на единицу, с 3 до 4, а затем это значение присваивается y . И наоборот, это пример постфикса:

int x = 3;
int y = x++;

На английском языке во второй строке кода говорится: присвоить значение x переменной y ПЕРВОЙ, а затем увеличить ЗНАЧЕНИЕ X НА ЕДИНИЦУ. Итак, значение x, равное 3, присваивается переменной y. Однако приращение на единицу не применяется к только что назначенному значению y, оно применяется в переменную x. В результате значение y остается 3, а значение x равно 4.

Эта последняя часть определенно смутила меня, потому что похоже, что вы работаете с переменной y only, так почему бы вам просто не присвоить ей x, равное 3, а затем увеличивая его на единицу, чтобы получить новое значение y 4? Причина в том, что когда оператор увеличения принимает форму postfix, вы выполняете присвоение первым. После этого в приведенном выше примере x ++ действительно просто переводится в x = x + 1 и в этот момент не имеет ничего общего с переменную y больше нет.

Даже то, что я написал это сейчас, помогло мне понять это еще больше!

В любом случае, это подводит нас к концу раздела Основные концепции. Следующий раздел назывался Условные выражения и циклы. Как всегда, пожалуйста, не стесняйтесь исправлять или дополнять все, что я написал.

Кроме того, вот ссылка на предыдущий пост Обучение программированию - Часть 3а: Основные концепции.