Нөхцөлт илэрхийлэл

Нөхцөлт илэрхийлэл тусдаа үйлдлийн багц. Ийм үйлдлүүд bool төрлийн логик утгыг буцаадаг. Нөхцөлт илэрхийлэл үнэн бол true, илэрхийлэл худал бол false утгыг буцаана. Ийм үйлдлүүдэд харьцуулах, логик үйлдлүүд хамаарагдана.

Харьцуулалтын үйлдэл

Харьцуулалтын үйлдэл хоёр операндийг харьцуулаад илэрхийлэл үнэн бол true, эсрэг тохиолдолд false утгыг буцаадаг.

  • == Тэнцүү. Хоёр операндийг тэнцүү эсэхийг шалгана. Операндууд тэнцүү бол true, тэнцүү биш бол false утгыг буцаана. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a == b; // false
  • != Тэнцүү биш. Хоёр операндийг харьцуулаад тэнцүү биш бол true, тэнцүү бол false -ийг буцаана. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a != b;    // true
    bool d = a!=10;     // false
  • < Бага. Нэгдүгээр операнд хоёрдугаар операндаас бага бол true, нэгдүгээр операнд хоёрдугаар операндаас их бол false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a < b; // false   
  • > Их. Нэгдүгээр операнд хоёрдугаар операндаас их бол true, нэгдүгээр операнд хоёрдугаар операндаас бага бол false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a > b;     // true
    bool d = a > 25;    // false
  • <= Бага эсхүл тэнцүү. Хоёр операндыг харьцуулаад нэгдүгээр операнд хоёрдугаар операндаас бага эсхүл тэнцүү бол true, эсрэг тохиолдолд false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a <= b;     // false
    bool d = a <= 25;    // true
  • >= Их эсхүл тэнцүү. Хоёр операндыг харьцуулаад нэгдүгээр операнд хоёрдугаар операндаас их эсхүл тэнцүү бол true, эсрэг тохиолдолд false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a >= b;     // true
    bool d = a >= 25;    // false

<, > <=, >= үйлдлүүд == , != үйлдлээс дээгүүр зэрэглэлтэй байдаг.

Логик үйлдлүүд

C#bool төрлийн утгыг буцаах логикийн операторууд бий. Үйлдлүүд операндоор bool төрлийн утгыг авдаг. Хэдэн харьцуулах үйлдлүүдийг нэгтгэсэн харьцаанд голдуу ашигладаг.

  • | Логик нийлбэр буюу логик БУЮУ /OR/. Үйлдэлд оролцогчийн аль нэг нь true утгыг буцааж байвал true утгыг өгнө. Жишээ.
    bool x1 = (5 > 6) | (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул true буцаана
    bool x2 = (5 > 6) | (4 > 6); // 5 > 6 - false, 4 > 6 - false, тул false буцаана
  • & Логик үржвэр буюу логик БА /AND/ үйлдэл. Хоёр операнд хоёулаа true байвал true -г буцаана. Жишээ.
    bool x1 = (5 > 6) & (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул false буцаана
    bool x2 = (5 < 6) & (4 < 6); // 5 < 6 - true, 4 < 6 - true, тул true буцаана.
  • || Логик нийлбэрийн үйлдэл. Үйлдэлд оролцогчийн аль нэг нь true утгыг буцааж байвал true утгыг өгнө. Жишээ.
    bool x1 = (5 > 6) || (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул true буцаана
    bool x2 = (5 > 6) || (4 > 6); // 5 > 6 - false, 4 > 6 - false, тул false буцаана
  • && Логик үржвэрийн үйлдэл. Хоёр оролцогч хоёулаа true бол true утгыг өгнө.
    bool x1 = (5 > 6) && (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул false утыг өгнө
    bool x2 = (5 < 6) && (4 < 6); // 5 < 6 - true, 4 < 6 - true, тул true утгыг өгнө
  • ! Логик үгүйсгэл. Үйлдэл нэг операнд дээр хийгдэх бөгөөд операнд false байвал true -г харин true бол false -ийг буцаана. Жишээ.
    bool a = true;
    bool b = !a;    // false
  • ^ Тусгай OR буюу XOR үйлдэл. Үйлдлийн нэг эсхүл хоёрдугаар операнд true (гэхдээ хоёулаа нэгэн зэрэг биш) байвал true утгыг өгнө. Бусад тохиолдолд false -ийг буцаана.
    bool x5 = (5 > 6) ^ (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул true буцаана
    bool x6 = (50 > 6) ^ (4 / 2 < 3); // 50 > 6 - true, 4/2 < 3 - true, тул false буцаана

Логик үйлдлүүдэд | ба || (бас & ба &&) хосууд төстэй үйлдлийг гүйцэтгэх хэдий ч ижил биш. Ялгааг жишээн дээр харцгаая.
z=x|y; илэрхийлэлд x, y -ийн утгуудыг хоёуланг нь тооцдог. Өөрөөр хэлбэл үйлдэлд оролцогч илэрхийллүүдийн утгыг бүгдийг тооцно гэсэн үг. Харин
z=x||y; илэрхийлэлд эхлээд x -ийн утгыг тооцоод хэрвээ утга true байвал y -ийн утгыг тооцохгүйгээр true -г буцаана. Учир нь || логик нийлбэрийн үйлдлийн дүрэм тийм. x -ийн утга false үед y -ийн утгыг тооцно.
Энэ нь &/&& үйлдлүүдэд бас хамаарна.
Илэрхийллийн утгын тооцолох хугацааг хэмнэн програмийн бүтээмжийг дээшлүүлэх учраас || , && үйлдлүүд илүү эвтэйхэн. Харин | , & үйлдлүүд тоонуудад битийн үйлдлүүд хийхэд илүү тохиромжтой.

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 345 Нийтийн

Нэг ерөнхийлөлтэй класс өөр ерөнхийлөлтэй классаас удамшиж болно. Ингэхдээ удамшилтын төрөл бүрийн хувилбаруудыг ашиглах боломжтой.   
Бидэнд дараах суурь

class Person<T>
{
    public T Id { get;}
    public Person(T id)
    {
        Id = id;
    }
}

Person класс байлаа гэе.

  Нээгдсэн тоо: 2379 Нийтийн

Өмнөх хичээлд бид өгөгдлийн сантай ажиллах Entity Framework технологи гэж юу болох, өгөгдлийн сантай ажиллахад шаардлагатай хэрэгслүүд, тэдгээрийг хэрхэн суулгахыг үзээд өгөгдлийн сан үүсгэн түүнд хандах жижигхэн програмыг зохиосон. Энэ хичээлээр өмнөх хичээлд бичсэн програмын код хэрхэн ажиллаж байгааг үргэлжлүүлэн судлах болно. Програмын кодыг сануулбал

using DbDemo.Properties;
using System;
using System.Data;
using System.Data.SqlClient;

namespace DbDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            using (IDbConnection connection = new SqlConnection(Settings.Default.DbConnect))
            {
                IDbCommand command = new SqlCommand("SELECT * FROM t_customers");
                command.Connection = connection;
                connection.Open();
                IDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    Console.WriteLine("Id: {0}\t Нэр: {1}", reader.GetInt32(0),
                        reader.GetString(1));
                }
            }
            Console.ReadLine();
        }
    }
}

гэж байгаа.

  Нээгдсэн тоо: 392 Бүртгүүлэх

Төрөл бүрийн класс, структуруудад хуурамч нэрийг /төлөөлөх нэр/ өгөөд дараа нь програмд төрлийн нэрийн оронд төлөөлөх нэрийг ашиглаж болно. Жишээ нь консолд мөр гаргах Console.WriteLine() аргын Console класст төлөөлөх нэрийг

using printer = System.Console;

printer.WriteLine("Монгол улс");
printer.WriteLine("Улаанбаатар хот");

өгч болно.

  Нээгдсэн тоо: 1622 Төлбөртэй

Илэрхийллийн модны талаар бид Лямбда илэрхийлэл хичээлд цухас дурдсан. Энэ хичээлээр илэрхийллийн модны ухагдхууныг дэлгэрүүлэн авч үзэх болно. Илэрхийллийн мод ухагдхуун нилээд хүндэвтэр сэдэв тул та

сэдвүүдийн талаар тодорхой мэдлэгтэй байх хэрэгтэй. Иймээс дээрх сэдвүүдийн талаарх хичээлүүдийг үзэхийг зөвлөе. Дээр дурдсан ухагдхуунуудын талаар мэдлэгтэй бол илэрхийллийн мод ухагдхууныг ойлгоход танд онцын хүндрэл үүсэхгүй.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 304

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 402

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 351

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 447

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 517

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 518

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 618

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 712

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 748

 
Энэ долоо хоногт

задаргааны хамгийн их нэмэгдхүүн бол a, b, c -г ол.

Нээгдсэн тоо : 1547

 

тэгшитгэлийг бод.

Нээгдсэн тоо : 1205

 

функцийн уламжлалын утгыг ол.

Нээгдсэн тоо : 448