C# muutujad & Operators Näidisega

⚡ Nutikas kokkuvõte

C# muutujad tähistavad salvestuskohti, mis hoiavad tüüpitud väärtusi, samas kui operaatorid teostavad nende väärtustega toiminguid, näiteks aritmeetikat, võrdlemist ja loogikat. Koos moodustavad nad iga C# programmi käivitatava avaldise ja arvutuse aluse.

  • 📦 Muutujad: Muutuja on nimega salvestusala, mille andmetüüp määrab selle väärtuse suuruse, paigutuse ja kehtivad toimingud.
  • 🔤 Deklaratsioon: Stringi ja Int32 deklareerimine näitab, kuidas C# hoiab teksti ja täisarve ning seejärel need Console.Write abil väljastab.
  • Operator-rühmad: Aritmeetilised, relatsioonilised ja loogilised operaatorid hõlmavad matemaatikat, võrdlusi ja Boole'i ​​kontrolle, mis suunavad programmi otsuseid.
  • 🧮 Omistamine ja bitipõhine: Liitoperaatorid, näiteks pluss-võrdub, lühendavad uuendusi, samas kui bitipõhised operaatorid töötavad täisarvude väärtuste üksikute bittidega.
  • 🔢 Eelistus: OperaTori eelistus ja assotsiatiivsus määravad järjekorra, milles C# keerulise avaldise osi hindab.
  • 🤖 AI abi: GitHub Copilot ja ML.NET aitavad genereerida muutujate deklaratsioone, operaatoriloogikat ja kaardistada väärtusi masinõppe funktsioonidesse.

C# muutujad ja Operatorse

C# muutujad

Muutuja on salvestusalale antud nimi, mida kasutatakse erinevate andmetüüpide väärtuste salvestamiseks. Igal C# muutujal peab olema kindel tüüp, mis määrab muutuja mälu suuruse ja paigutuse.

Näiteks võib muutuja olla tüüpi String, mis tähendab, et seda kasutatakse stringi väärtuse salvestamiseks. Sõltuvalt andmetüübist saab muutujaga teha konkreetseid toiminguid.

Näiteks kui meil oleks täisarvuline muutuja, siis sellised toimingud nagu liitmine ja alamoperatsioontracMuutujaga saab teostada toiminguid. Programmis saab deklareerida mitu muutujat.

Vaatame kiiret näidet mitme erineva andmetüübi muutuja deklareerimisest.

Meie näites defineerime kaks muutujat, millest üks on tüüp 'string' ja teine ​​'Integer'. Seejärel kuvame nende muutujate väärtused konsoolile. Iga näite puhul muudame faili Program.cs põhifunktsiooni.

C# muutujad

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program 
 {
  static void Main(string[] args) 
  {
   String message="The value is ";
   Int32 val=30;
   
   Console.Write(message+val);
   Console.ReadKey();
  }
 }
}

Code Selgitus:-

  1. Deklareeritakse muutuja andmetüübiga String. Muutuja nimi on 'message'. Muutuja väärtus on "Väärtus on".
  2. Deklareeritakse muutuja andmetüübiga Integer (Int32). Muutuja nimi on "val". Muutuja väärtus on 30.
  3. Lõpuks kasutatakse Console.write lauset nii Stringi kui ka Integer muutuja väärtuse väljastamiseks.

Kui ülaltoodud kood on õigesti sisestatud ja programm on edukalt käivitatud, kuvatakse järgmine väljund.

Väljund:

C# muutujad

Väljundist on näha, et konsoolile kuvatakse nii stringi kui ka täisarvu muutuja väärtused.

Nüüd, kui muutujad saavad väärtusi hoida, on järgmine samm nende väärtustega tegutseda. OperaOperaatoreid kasutatakse erinevat tüüpi andmeväärtustega tehtavate toimingute tegemiseks. Näiteks kahe arvu liitmiseks kasutatakse operaatorit +.

Vaatame erinevate jaoks saadaolevate operaatorite tabelit andmetüübid.

C# Operatorse

Aritmeetika Operatorse

Need on operaatorid, mida kasutatakse arvudega matemaatiliste tehteid tehes. Allpool on loetletud operaatorid, mis on saadaval C#.

Operator Kirjeldus
+ Lisab kaks operandi
- allatracts teine ​​operand esimesest
* Korrutab mõlemad operandid
/ Jagab lugeja de-lugejaga
% Moodul Operator ja jääk pärast täisarvu jagamist
++ Inkrementi operaator suurendab täisarvu väärtust ühe võrra
- Vähendamise operaator vähendab täisarvu väärtust ühe võrra

Suhteline Operatorse

Need on operaatorid, mida kasutatakse numbrite relatsioonioperatsioonide tegemiseks. Allpool on C#-s saadaolevate relatsioonioperaatorite loend.

Operator Kirjeldus
== Kontrollib, kas kahe operandi väärtused on võrdsed või mitte, kui jah, muutub tingimus tõeseks.
!= Kontrollib, kas kahe operandi väärtused on võrdsed või mitte, kui väärtused ei ole võrdsed, muutub tingimus tõeseks.
> Kontrollib, kas vasaku operandi väärtus on suurem kui parempoolse operandi väärtus, kui jah, muutub tingimus tõeseks.
< Kontrollib, kas vasaku operandi väärtus on väiksem kui parempoolse operandi väärtus, kui jah, muutub tingimus tõeseks.
>= Kontrollib, kas vasaku operandi väärtus on suurem või võrdne parempoolse operandi väärtusega, kui jah, muutub tingimus tõeseks.
<= Kontrollib, kas vasaku operandi väärtus on väiksem või võrdne parempoolse operandi väärtusega, kui jah, muutub tingimus tõeseks.

loogiline Operatorse

Need on operaatorid, mida kasutatakse väärtustega loogiliste toimingute tegemiseks. Allpool on C#-s saadaolevate operaatorite loend.

Operator Kirjeldus
&& See on operaator Loogiline JA. Kui mõlemad operandid on tõesed, muutub tingimus tõeseks.
|| See on operaator Loogiline VÕI. Kui mõni operand on tõene, muutub tingimus tõeseks.
! See on operaator Loogiline EI.

Vaatame kiiret näidet, kuidas operaatoreid .NET-is kasutada saab.

Meie näites defineerime kaks täisarvulist muutujat ja ühe Boole'i ​​muutuja. Seejärel teostame nendega aritmeetilisi, relatsioonilisi ja loogilisi operatsioone.

C# Operatorse

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program 
 {
  static void Main(string[] args) 
  {
   Int32 val1 = 10,val2 = 20;
   bool status = true;
   
   Console.WriteLine(val1 + val2);
   Console.WriteLine(val1 < val2);
   Console.WriteLine(!(status));
   Console.ReadKey();
  }
 }
}

Code Selgitus:-

  1. Määratletakse kaks täisarvu muutujat, millest üks on val1 ja teine ​​val2. Neid kasutatakse relatsiooni- ja aritmeetiliste toimingute tutvustamiseks. Loogiliste toimingute esitlemiseks on määratletud Boole'i ​​muutuja.
  2. Näidatud on aritmeetilise operatsiooni näide, kus liitmisoperaator teostatakse väärtustel val1 ja val2. Tulemus kirjutatakse konsooli.
  3. Näidatud on relatsioonioperatsiooni näide, kus operaator vähem kui teostatakse väärtustel val1 ja val2. Tulemus kirjutatakse konsooli.
  4. Näidatud on loogilise operatsiooni näide, kus olekumuutujale rakendatakse loogilist operaatorit (!). Loogiline operaator NOT pöörab mis tahes Boole'i ​​väärtuse praeguse väärtuse ümber. Nii et kui Boole'i ​​väärtus on "true", tagastab loogiline EI väärtuse "false" ja vastupidi. Meie puhul, kuna olekumuutuja väärtus on 'tõene', kuvatakse tulemuseks 'false'. Tulemus kirjutatakse konsooli.

Kui ülaltoodud kood on õigesti sisestatud ja programm on edukalt käivitatud, kuvatakse väljund.

Väljund:

C# Operatorse

C# ülesanne Operatorse

Omistusoperaatorid salvestavad avaldise tulemuse muutujasse. Põhiline omistusoperaator on võrdusmärk ja C# pakub ka liitoperaatoreid, mis ühendavad omistamise aritmeetilise või bitipõhise tehtega. Need lühendid hoiavad uuendamislaused lühikesed ja hõlpsasti loetavad.

Operator Kirjeldus
= Määrab parema operandi väärtuse vasakule operandile
+= Lisab parema operandi vasakule operandile ja määrab tulemuse
-= allatraceraldab vasakpoolsest operandist parempoolse operandi ja määrab tulemuse
*= Korrutab mõlemad operandid ja määrab tulemuse vasakule operandile
/= Jagab vasakpoolse operandi parema operandiga ja määrab tulemuse
%= Võtab mõlema operandi mooduli ja määrab jäägi vasakule operandile

Näiteks count += 5 kirjutamine on lühem viis count = count + 5 kirjutamiseks. Liitoperaatorid töötavad iga aritmeetilise operaatori ja ka bitipõhiste operaatoritega, seega esinevad need sageli tsüklite ja loendurite sees, kus väärtust korduvalt uuendatakse.

C# bititipõhine Operatorse

Bitipõhised operaatorid toimivad täisarvude väärtuste üksikute bittide, mitte täisarvude suhtes. Need on kasulikud madala taseme ülesannete puhul, näiteks lippude määramine, väärtuste maskeerimine ja kiire korrutamine või jagamine kahe astmega.

Operator Kirjeldus
& Bittide kaupa JA seab iga tulemusbiti väärtuseks 1 ainult siis, kui mõlemad vastavad bitid on 1
| Bittide kaupa OR seab iga tulemusbiti väärtuseks 1, kui kumbki sobiv bitt on 1.
^ Bittide kaupa XOR määrab iga tulemusbiti väärtuseks 1 ainult siis, kui kaks sobivat bitti erinevad
~ Bittide kaupa täiend inverteerib iga oma üksiku operandi biti
<< Vasakule nihutamine liigutab bitte vasakule ja täidab tühjad kohad nullidega.
>> Paremale nihutamine liigutab bitte antud positsioonide arvu võrra paremale

Näiteks avaldis 5 ja 3 võrdleb mõlema arvu bitte ja tagastab väärtuse 1. Kuna üks vasakule nihutamine kahekordistab väärtuse, saavad bitipõhised operaatorid mõningaid arvutusi teha kiiremini kui nende aritmeetilised ekvivalendid, mis on oluline graafikas ja manuskoodis.

C# OperaEelistus ja assotsiatiivsus

Kui avaldis sisaldab mitut operaatorit, siis C# ei hinda neid lihtsalt vasakult paremale. OperaTori eelistus määrab erinevate operaatorite käivitumise järjekorra ja assotsiatiivsus otsustab järjekorra, kui kahel operaatoril on sama eelistus.

  • Eelistus: Korrutamine ja jagamine tehakse enne liitmist ja jagamisttractsioon, seega 2 + 3 * 4 annab 14, mitte 20.
  • Vasakpoolne assotsiatiivsus: Enamik binaaroperaatoreid rühmitatakse vasakult paremale, seega a – b – c hinnatakse kujul (a – b) – c.
  • Parempoolne assotsiatiivsus: Omistus- ja tingimusoperaatorid rühmituvad paremalt vasakule, seega x = y = z omistab z esmalt y-le.
  • Sulud: Mähiping Sulgudes olev avaldise osa tühistab vaikejärjekorra ja muudab kavandatud arvutuse selgemaks.

Sulgudele toetumine kogu eelistustabeli meeldejätmise asemel hoiab keerulised avaldised loetavana ja aitab vältida peeneid arvutusvigu.

KKK

Muutuja väärtus võib täitmise ajal muutuda, samas kui const-võtsõnaga deklareeritud konstant on kompileerimise ajal fikseeritud ja ei muutu kunagi. Kasutage muutujaid andmete jaoks, mis uuenevad, ja konstante selliste väärtuste jaoks nagu Pi, mis jäävad samaks.

Märksõna var võimaldab kompilaatoril tuletada kohaliku muutuja tüübi selle initsialiseerijast, seega var count = 10 loob täisarvu (int). Muutuja on endiselt tugevalt tüübitud; var välistab ainult vajaduse tüübi nime selgesõnaliselt kirjutada.

Üksik võrdusmärk on omistamisoperaator, mis salvestab väärtuse muutujasse. Kahekordne võrdusmärk on võrdusoperaator, mis võrdleb kahte väärtust ja tagastab tõese või väära väärtuse. Nende kahe segi ajamine on algajate seas levinud viga.

Unaarne operaator töötab ühe operandiga, näiteks loogiline NOT ! või ++ inkrement. Binaarne operaator töötab kahe operandiga, näiteks + liitmiseks või && loogiliseks JA-operatsiooniks. C#-l on samuti üks ternaarne operaator.

Kolmekomponentne operaator ?: on if-else lause lühend. See hindab tingimust ja tagastab esimese väärtuse, kui tingimus on tõene, ja teise, kui see on väär, näiteks int max = a > b ? a : b.

Nullväärtusi koalestseeriv operaator ?? tagastab vasakpoolse operandi, kui see väärtus ei ole null, vastasel juhul tagastab see parempoolse operandi. Näiteks nimi ?? „Külaline” annab vaikeväärtuse. Variant ??= määrab väärtuse ainult siis, kui sihtmärk on hetkel null.

Jah. GitHub Copilot soovitab Visual Studios muutujate deklareerimist, operaatoravaldisi ja liitväärtuste määramist. VS Codeja saab kommentaari põhjal arvutuse lõpule viia. RevVaadake iga soovitust õigete andmetüüpide ja kavandatud eelistuse järjekorra kohta.

ML.NET torujuhtmed tuginevad C# muutujatele funktsioonide ja siltide hoidmiseks ning operaatoritele nende normaliseerimiseks või kombineerimiseks enne treenimist. Numbrilised ja Boole'i ​​väärtused vastavad selgelt mudeli sisenditele, mis hoiab masinõppe töövoo tugevalt tüübistatuna ja prognoositavana.

Võta see postitus kokku järgmiselt: