var ternary operator
Този урок обяснява Var, LINQ и Ternary Operator в C # със синтаксис, използване и примери за програмиране:
C # е силно типизиран език, т.е. трябва да декларираме променлива, преди да можем да я използваме навсякъде в програмата. Но нека приемем сценарий, при който не знаем какъв тип променлива ще ни е необходим в следващата стъпка от програмата.
За да се справи с тези типове сценарии, C # позволява на потребителя да декларира променливи, без да им предоставя изрични типове данни. Това може да се постигне чрез деклариране на променлива тип „var”.
=> Прочетете Лесната серия за обучение на C #
Какво ще научите:
Имате C #
Характеристики на ключовата дума „var“
Ключовата дума var инициализира променливи с поддръжка от var. Типът данни на променлива на var се дефинира по време на изпълнението, докато се присвояват данни на променливата. C # автоматично прехвърля типа данни към променливата var. След като типът данни е присвоен на променливата, тя не може да бъде променена.
Пример
Ключовата дума “var” може да се използва за деклариране на променлива тип var, която може да се използва за съхраняване на всякакъв тип данни. Нека да разгледаме някои от употребите на променливи от тип var за различните типове данни.
public static void Main(string() args) { var integerData = 100; var booleanData = true; var stringData = 'Var Keyword'; Console.WriteLine('Printing different var variables:
{0}
{1}
{2}', integerData, booleanData, stringData); Console.Read(); }
Изход
Отпечатване на различни променливи на var:
100
Вярно
Бъдете ключова дума
Обяснение
Тук дефинирахме 3 различни променливи - integerData, booleanData и stringData с тип данни „var“. След това сме присвоили стойности на различни типове данни за всяка от тези променливи. Сега, ако отпечатаме това на конзолата, тогава ще получим изхода на цялата присвоена стойност.
Използване на var за достъп до данни от ArrayList
Да приемем, че имаме ArrayList, до който искаме да осъществим достъп. Ако нямаме никаква представа за типа данни на списъка с масиви, тогава използването на променлива var може да бъде доста полезно. Също така може да бъде полезно, ако списъкът с масиви се състои от множество типове данни.
Пример
програма за правене на екранни снимки на компютър
public static void Main(string() args) { ArrayList ar = new ArrayList(); ar.Add(1); ar.Add(2); ar.Add(3); ar.Add(4); foreach (var a in ar) { Console.WriteLine(a); } Console.Read(); }
Изход
1
две
3
4
Обяснение
Създадохме ArrayList с 4 стойности 1, 2, 3 и 4. Както вече споменахме, ако не знаем типовете данни, налични в списъка с масиви, тогава можем да използваме „var“ в цикъла foreach за достъп до всякакви данни тип, който може да съдържа.
Така че, на всяка променлива ще бъдат присвоени типове данни по време на присвояване на стойност. Това е полезно и ако масивът съдържа множество стойности на типа данни.
Ограничения при използване на var
Подобно на другите типове данни и ключови думи var също има своя справедлив дял от ограничения. Нека да разгледаме някои от ограниченията за ключовата дума var.
- Var затъмнява действителния тип данни на променливата. Ако инициализаторът по някакъв начин не присвои ясно дефиниран тип данни, тогава ще бъде трудно да се определи действителният тип данни на променливата.
- Ключовата дума „var“ е проста, че програмистите в крайна сметка я използват навсякъде и това затруднява разграничаването й от останалите променливи в приложението. Например, ако имам променлива тип var. Не знам дали е низ, цяло число или дори речник.
Резюме на ключовата дума C # var
По-долу са изброени някои от най-важните факти за ключовата дума var, които всички ние трябва да имаме предвид, докато я използваме:
- Var е доста полезен при локално дефиниране на променливи, без да се налага да предоставя изричен тип данни. Типът данни на променлива на var се определя, докато на нея се присвоява някаква стойност. След като типът данни е зададен, той не може да бъде променен.
- Всички променливи на var трябва да бъдат декларирани и инициализирани в същия ред на кода. C # не позволява да се присвоява нулева стойност на неявните локални променливи.
C # тернарни оператори
Троичният оператор в C Sharp е оператор за вземане на решения и той замества if-else изявление в C Sharp език за програмиране. Този оператор ни позволява да заменим множество if-else изрази в прост ред код.
Тройният оператор помага на програмистите да изпълняват изрази въз основа на някои предварително дефинирани условия, като използва синтаксиса на оператора за вземане на решения „?:“.
Синтаксис на тернарния оператор
В езика за програмиране C # тернарният оператор съдържа 3 различни типа операнди
Условие_изразяване? First_expression: Second_expression;
Както се вижда в горния синтаксис, тернарният оператор се състои от три части. Първата част съдържа условен израз, който ще върне булева стойност, т.е. True или false.
Втората част съдържа изявлението, което програмист иска да върне, ако изразът е оценен като истина. Финалната и последната част съдържа изявлението, което ще бъде върнато, ако изразът се оценява като невярно.
Въпросът, който трябва да се има предвид, е, че тернарният оператор връща само стойността, съдържаща се във втората и третата част, но не изпълнява изразите.
Нека да разгледаме следния пример, за да видим как работи условният оператор:
Програма
public static void Main(string() args) { int a = 1; int b = 3; var compare = a > b ? 'a is greater than b ' : 'b is greater than a'; Console.WriteLine('The comparison result : {0}', compare); }
Изход
Резултат от сравнението: b е по-голямо от a
Обяснение на кода
Тук имаме две различни цели числа, които използвахме за сравнение. Използваме var сравнение за съхраняване на резултата. След това използваме тройния оператор, за да сравним двете цели числа. Така че, ако изразът връща true, първият израз ще бъде върнат като резултат и ако изразът е false, тогава ще бъде върнат вторият израз.
въпроси за интервю за селен за 4 години опит
Вложен тернарен оператор
C # също така позволява на програмистите да създават вложен троичен оператор чрез комбиниране на множество условни изрази. Вложеният троичен оператор помага при заместването на множество if-else if изрази и по този начин ги опростява в един ред код.
Нека да видим по-ясно пример за стандартна вложена тройка. Например, ние ще обсъдим как можем да използваме един ред код на тернарния оператор, вместо да използваме голям операторски блок if-else-if.
Програма
public static void Main(string() args) { int a = 3; int b = 3; var compare = a > b ? 'a is greater than b' : a Изход
Резултат от сравнението: a е равно на b
Обяснение
Ако разгледаме горния пример, ще можем да видим, че вместо да пишем множество изрази if-else, сме написали един вложен тройни оператор, който дава същия резултат, както са написани множество изрази над него.
Вложен тройни оператор се записва чрез замяна на втория израз в синтаксиса на тройния оператор с друг тройния оператор. Можем да направим това няколко пъти, за да вложим произволен брой от даденото условие. Това може да се използва и за замяна на условието if else if.
Резюме на тернарния оператор
- Научихме за израза на тройния оператор.
- Също така научаваме, че трикратният оператор винаги връща стойност и тя не се изпълнява.
Свободният тернален оператор може да се използва за замяна на оператора if-else или if-else-if. Можем просто да използваме тройния оператор или дори да използваме вложен тройния оператор.
C # LINQ
В .net Framework 3.5 е въведена езикова интегрирана заявка или LINQ. Помага при заявки за данни от различни събирачи на данни, като например база данни е колекции и т.н. Въз основа на потребителските изисквания.
Той е интегриран както с C Sharp, така и с VB, като по този начин помага за премахването на конфликта между различните програмни езици и бази данни едновременно, като по този начин предоставя заявка за един език за различни източници на данни.
Например, можем да използваме LINQ за извличане на незаписани данни от базата данни, подобно на SQL Query. Можем да помогнем на програмистите за достъп и запазване на данни от различни източници на данни като SQL Server, XML документ, колекции и др.
Синтаксис на LINQ
Преди да започнем да извършваме операции, използвайки LINQ, трябва да импортираме пространството от имена system.Linq в нашето приложение.
Можем да извършваме LINQ операции по два начина:
- Синтаксис на заявка LINQ
- Синтаксис на метода LINQ
Синтаксис на заявка LINQ
Използвайки LINQ, можем да изпълняваме различни операции за заявки, използвайки синтаксиса на заявката. Той е доста различен от SQL и изисква от нас да следваме йерархията на синтаксиса, както е показано по-долу.
Йерархията на изречението е дадена в следния ред.
От, в, нека, където, подредете по, изберете, групирайте по, в
Това са йерархията на реда, която трябва да се поддържа, докато се пише синтаксис на заявката LINQ. Нека да разгледаме общия синтаксис за синтаксиса на заявка LINQ.
Синтаксис
from variable_name in collection_name
Нека да разгледаме един пример, за да разберем по-ясно използването на синтаксиса на заявката.
система за управление на релационни бази данни с отворен код
Програма
public static void Main(string() args) { int() ar = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }; var query = from num in ar where num <3 select num; foreach (var v in query) { Console.WriteLine(v); } }
Изход
1
две
Обяснение
В този пример дефинирахме масив от цяло число с някои тестови данни. След това използвахме променлива тип var, за да съхраним резултата от заявката LINQ. По-късно използвахме цикъл foreach, за да отпечатаме цялото съдържание на резултата.
Горният пример ни показва как да използваме синтаксиса на заявката LINQ в нашата програма.
Синтаксис на метода LINQ
Синтаксисът на метода използва разширения метод на класа Enumerable. Синтаксисът на метода е доста различен от синтаксиса на заявката.
По-долу е даден пример, за да се види как работи синтаксисът на метода.
Програма
public static void Main(string() args) { int() ar = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }; IEnumerable query = ar.Where(n => n > 9).ToList(); foreach (var v in query) { Console.WriteLine(v); } }
Изход
10
единадесет
12
Обяснение
Тук имаме масив от цяло число с някои цели данни. След това изпълнихме заявката за метод в масива с цели числа. Използвахме цикъл foreach, за да извлечем данните от резултата от заявката. Това ни дава резултата въз основа на условието, което сме предоставили в синтаксиса на метода.
Заключение
Научихме, че LINQ е интегриран език за заявки, който е въведен в рамката .Net.
Предлага решение за заявки към различни източници на данни, като например XML колекции от документи, SQL бази данни и др. Може да се използва както с C Sharp, така и с VB.net.
=> Проверете ВСИЧКИ уроци за C # тук
Препоръчително четене
- Тернарен оператор в Java - Урок с примери
- Най-добрият БЕЗПЛАТЕН урок за C #: Най-доброто ръководство за C # за начинаещи
- C # Array: Как да декларирам, инициализирам и достъп до масив в C #?
- Колекции C #: ArrayList, HashTable, SortedList с примери
- Урок за C # DateTime: Работа с дата и час в C # с пример
- C # Списък и речник - Урок с примери за кодове
- Оператори на C #: аритметични, релационни, присвояващи и логически
- Кастинг на тип C #: Изрично и неявно преобразуване на данни с пример