SlideShare una empresa de Scribd logo
1 de 23
• C# Language Basics
• Variables and Data Types
• Array, ArrayList, Enumerations
• Operator & Math Functions
• Type Conversions
• The DateTime and TimeSpan Types
• Conditional Logic
• Loops
• Methods & Method Overloading
• Parameters (Optional & Named)
• Delegates
• Case Sensitivity
• Commenting
// A single-line C# comment.
/* A multiple-line
C# comment. */
• Statement Termination
• Blocks
{
// Code statements go here.
}
• Declaration, Assignment & Initializers
int errorCode;
string myName;
errorCode = 10;
myName = "Matthew";
int errorCode = 10;
string myName ="Matthew";
C#
Type
VB Type .Net
System
type
Signed? Bytes
Occupied
Possible Values
sbyte
byte
SByte
Byte
SByte
Byte
Yes
No
1
1
-128 to 127
0 to 255
short Short Int16 Yes 2 -32768 to 32767
int Integer Int32 Yes 4 -2147483648 to 2147483647
long Long Int64 Yes 8 -9223372036854775808 to
9223372036854775807
ushort UShort Uint16 No 2 0 to 65535
uint UInteger UInt32 No 4 0 to 4294967295
ulong ULong Uint64 No 8 0 to
18446744073709551615
C#
Type
VB Type .Net System
Type
Sign
ed?
Bytes
Occupied
Possible Values
float Float Single Yes 4 Approx. ±1.5 x 10-45 to ±3.4 x 1038
with 7 significant figures
double Double Double Yes 8 Approx. ±5.0 x 10-324 to ±1.7 x 10308
with 15 or 16 significant figures
decimal Decimal Decimal Yes 12 Approx. ±1.0 x 10-28 to ±7.9 x 1028
with 28 or 29 significant figures
char Char Char N/A 2 Any Unicode character (16 bit)
bool Boolean Boolean N/A 1 / 2 true or false
• " (double quote)
• n (new line)
• t (horizontal tab)
•  (backward slash)
// A C# variable holding the
// c:MyAppMyFiles path.
path = "c:MyAppMyFiles";
Alternatively, you can turn off C# escaping by preceding a string with an
@ symbol, as shown here:
path = @"c:MyAppMyFiles";
Arrays allow you to store a series of values that have the
same data type.
// Create an array with four strings (from index 0 to index 3).
// You need to initialize the array with the new keyword in order to use it.
string[] stringArray = new string[4];
// Create a 2x4 grid array (with a total of eight integers).
int[,] intArray = new int[2, 4];
// Create an array with four strings, one for each number from 1 to 4.
string[] stringArray = {"1", "2", "3", "4"};
// Create a 4x2 array (a grid with four rows and two columns).
int[,] intArray = {{1, 2}, {3, 4}, {5, 6}, {7, 8}};
ArrayList dynamicList = new ArrayList();
// Add several strings to the list.
The ArrayList is not strongly typed, so you can add any data type
dynamicList.Add("one");
dynamicList.Add(2);
dynamicList.Add(true);
// Retrieve the first string. Notice that the object must be converted to a
// string, because there's no way for .NET to be certain what it is.
string item = Convert.ToString(dynamicList[0]);
An enumeration is a group of related constants, each of which is given
a descriptive name. Each value in an enumeration corresponds to a
preset integer.
enum UserType
{
Admin,
Guest,
Invalid
}
+, -, *, / ,% are basic operators
To use the math operations, you invoke the methods of
the System.Math class.
myValue = Math.Round(42.889, 2); // myValue = 42.89
myValue = Math.Abs(-10); // myValue = 10.0
myValue = Math.Log(24.212); // myValue = 3.18.. (and
so on)
myValue = Math.PI; // myValue = 3.14.. (and so on)
Converting information from one data type to another
Conversions are of two types: widening and narrowing. Widening
conversions always succeed.
For example, you can always convert a 32-bit integer into a 64-bit integer.
int mySmallValue;
long myLargeValue;
mySmallValue = Int32.MaxValue;
myLargeValue = mySmallValue;
Or
mySmallValue = (int)myLargeValue;
int myInt=1000;
short count;
count=(short)myInt;
Converting information from one data type to another
String myString;
int myInteger=100;
myString=myInteger.ToString();
String countString=“10”;
int count=Convert.ToInt32(countString);
or
int count=Int32.Parse(countString);
Length() : myString.Length()
ToUpper(), ToLower() myString.ToUpper()
Trim() myString.Trim()
Substring() myString.SubString(0,2)
StartsWith(), EndsWith() myString.StartsWith(“pre”)
PadLeft(), PadRight() myString.PadLeft(5,”*”)
Insert() myString.Insert(1,”pre)
Remove() myString.Remove(0,2)
Split() myString.Split(“,”)
Join() myString1.Join(myString2)
Replace() myString.Replace(“a”,”b”)
DateTime and Timespane data types have built-in methods and properties
Methods & Properties of DateTime :
Now
Today
Year, Date, Month ,Hour, Minute, Second, and Millisecond
Add() and Subtract()
AddYears(), AddMonths(), AddDays(), AddHours, AddMinutes()
DaysIn Month()
Methods and Properties of TimeSpan:
Days, Hours, Minutes, Seconds, Milliseconds
TotalDays, TotalHours, TotalMinutes, TotalSeconds, TotalMilliseconds
Add() and Subtract()
FromDays(), FromHours(), From Minutes(), FromSeconds()
DateTime myDate = DateTime.Now;
myDate = myDate.AddDays(100);
DateTime myDate2 = DateTime.Now.AddHours(3000);
TimeSpan difference;
difference = myDate2.Subtract(myDate1);
double numberOfMinutes;
numberOfMinutes = difference.TotalMinutes;
// Adding a TimeSpan to a DateTime creates a new DateTime.
DateTime myDate1 = DateTime.Now;
TimeSpan interval = TimeSpan.FromHours(3000);
DateTime myDate2 = myDate1 + interval;
// Subtracting one DateTime object from another produces a TimeSpan.
TimeSpan difference;
difference = myDate2 - myDate1;
All conditional logic starts with a condition: a simple
expression that can be evaluated to true or false. Your
code can then make a decision to execute different logic
depending on the outcome of the condition.
To build a condition, you can use any combination of
literal values or variables along with logical operators
== Equal to
!= Not Equal to
< Less than
> Greater than
<= Less than or equal to
>= Greater than or equal to
&& Logical and
|| Logical or
The if Statement
if (myNumber > 10)
{
// Do something.
}
else if (myString == "hello")
{
// Do something.
}
else
{
// Do something
The switch Statement
switch (myNumber)
{
case 1:
// Do something.
break;
case 2:
// Do something.
break;
default:
// Do something.
break;
}
Loops allow you to repeat a segment of code multiple times. C#
has three basic types of loops
• You can loop a set number of times with a for loop.
• You can loop through all the items in a collection of data
using a foreach loop.
• You can loop while a certain condition holds true with a while
or do…while loop.
THE FOR LOOP
string[] stringArray = {"one", "two", "three"};
for (int i = 0; i < stringArray.Length; i++)
{
System.Diagnostics.Debug.Write(stringArray[i] );
}
THE FOREACH LOOP
foreach (string element in stringArray)
{
System.Diagnostics.Debug.Write(element );
}
THE WHILE LOOP
int i = 0;
while (i < 10)
{
i += 1;
// This code executes ten times.
}
You can also place the condition at the end of the loop using the
do…while syntax. In this case, the
condition is tested at the end of each pass through the loop:
THE DO WHILE LOOP
int i = 0;
do
{
i += 1;
// This code executes ten times.
}
while (i < 10);
A method also known as function is a named grouping of one or more
lines of code. Each method will perform a distinct, logical task.
By breaking your code down into methods, you not only simplify your
life, but you also make it easier to organize your code into classes
// This method doesn't return any information.
void MyMethodNoReturnedData()
{
// Code goes here.
}
// This method returns an integer.
int MyMethodReturnedData()
{
// As an example, return the number 10.
return 10;
}
Optional Parameter
private string GetUserName(int ID, bool useShortForm = false)
{ // Code here.
}
name = GetUserName(401, true);
name = GetUserName(401);
Use Named parameter for multiple optional parameters:
private decimal GetSalesTotalForRegion(int regionID, decimal minSale = 0,
decimal maxSale = Decimal.MaxValue, bool includeTax = false)
{ // Code here.
}
total = GetSalesTotalForRegion(523, maxSale: 5000);
Delegates allow you to create a variable that “points” to a
method.
private string TranslateEnglishToFrench();
{
}
private delegate string translateLanguage(string inputString);
translateLanguage translate;
translate=TranslateEnglishToFrench;
string frenchString;
frenchString=translate(“Hello”);
You can make delegate point to any other function also if it
has same signature
private string TranslateEnglishToSpanish();
{
}
translate=TranslateEnglishToSpanish;
string spanishString;
spanishString=translate(“Hello”);
private string TranslateEnglishToGerman();
{
}
translate=TranslateEnglishToGerman;
string germanString;
germanString=translate(“Hello”);
It’s impossible to do justice to an entire language in a single
chapter. However, if you’ve programmed before, you’ll find
that this chapter provides all the information you need to get
started with the C# language. As you work through the full
ASP.NET examples in the following chapters, you can refer
to this chapter to clear up any language issues.
In the next chapter, you’ll learn about more important
language concepts and the object-oriented nature of .NET.

Más contenido relacionado

La actualidad más candente

C# / Java Language Comparison
C# / Java Language ComparisonC# / Java Language Comparison
C# / Java Language ComparisonRobert Bachmann
 
Visula C# Programming Lecture 2
Visula C# Programming Lecture 2Visula C# Programming Lecture 2
Visula C# Programming Lecture 2Abou Bakr Ashraf
 
Why Java Sucks and C# Rocks (Final)
Why Java Sucks and C# Rocks (Final)Why Java Sucks and C# Rocks (Final)
Why Java Sucks and C# Rocks (Final)jeffz
 
Learning C++ - Introduction to c++ programming 1
Learning C++ - Introduction to c++ programming 1Learning C++ - Introduction to c++ programming 1
Learning C++ - Introduction to c++ programming 1Ali Aminian
 
Visula C# Programming Lecture 6
Visula C# Programming Lecture 6Visula C# Programming Lecture 6
Visula C# Programming Lecture 6Abou Bakr Ashraf
 
Learn c++ Programming Language
Learn c++ Programming LanguageLearn c++ Programming Language
Learn c++ Programming LanguageSteve Johnson
 
C# Variables and Operators
C# Variables and OperatorsC# Variables and Operators
C# Variables and OperatorsSunil OS
 
Esoft Metro Campus - Certificate in c / c++ programming
Esoft Metro Campus - Certificate in c / c++ programmingEsoft Metro Campus - Certificate in c / c++ programming
Esoft Metro Campus - Certificate in c / c++ programmingRasan Samarasinghe
 

La actualidad más candente (20)

C Theory
C TheoryC Theory
C Theory
 
C++ Language
C++ LanguageC++ Language
C++ Language
 
C# / Java Language Comparison
C# / Java Language ComparisonC# / Java Language Comparison
C# / Java Language Comparison
 
Managing I/O in c++
Managing I/O in c++Managing I/O in c++
Managing I/O in c++
 
C++ theory
C++ theoryC++ theory
C++ theory
 
Visula C# Programming Lecture 2
Visula C# Programming Lecture 2Visula C# Programming Lecture 2
Visula C# Programming Lecture 2
 
Why Java Sucks and C# Rocks (Final)
Why Java Sucks and C# Rocks (Final)Why Java Sucks and C# Rocks (Final)
Why Java Sucks and C# Rocks (Final)
 
Basic c#
Basic c#Basic c#
Basic c#
 
java vs C#
java vs C#java vs C#
java vs C#
 
C++ oop
C++ oopC++ oop
C++ oop
 
Learning C++ - Introduction to c++ programming 1
Learning C++ - Introduction to c++ programming 1Learning C++ - Introduction to c++ programming 1
Learning C++ - Introduction to c++ programming 1
 
Visula C# Programming Lecture 6
Visula C# Programming Lecture 6Visula C# Programming Lecture 6
Visula C# Programming Lecture 6
 
C Basics
C BasicsC Basics
C Basics
 
Ppt of c++ vs c#
Ppt of c++ vs c#Ppt of c++ vs c#
Ppt of c++ vs c#
 
Dr archana dhawan bajaj - c# dot net
Dr archana dhawan bajaj - c# dot netDr archana dhawan bajaj - c# dot net
Dr archana dhawan bajaj - c# dot net
 
Learn c++ Programming Language
Learn c++ Programming LanguageLearn c++ Programming Language
Learn c++ Programming Language
 
C# Basics
C# BasicsC# Basics
C# Basics
 
C# Variables and Operators
C# Variables and OperatorsC# Variables and Operators
C# Variables and Operators
 
Esoft Metro Campus - Certificate in c / c++ programming
Esoft Metro Campus - Certificate in c / c++ programmingEsoft Metro Campus - Certificate in c / c++ programming
Esoft Metro Campus - Certificate in c / c++ programming
 
C++ Version 2
C++  Version 2C++  Version 2
C++ Version 2
 

Destacado

Destacado (20)

Programming in c#
Programming in c#Programming in c#
Programming in c#
 
Imparare c n.104
Imparare c  n.104Imparare c  n.104
Imparare c n.104
 
C# .net lecture 1 in Hebrew
C# .net lecture 1 in HebrewC# .net lecture 1 in Hebrew
C# .net lecture 1 in Hebrew
 
Spf Chapter4 Variables
Spf Chapter4 VariablesSpf Chapter4 Variables
Spf Chapter4 Variables
 
DATATYPE IN C# CSHARP.net
DATATYPE IN C# CSHARP.netDATATYPE IN C# CSHARP.net
DATATYPE IN C# CSHARP.net
 
C# .net lecture 2 Objects 2
C# .net lecture 2 Objects 2C# .net lecture 2 Objects 2
C# .net lecture 2 Objects 2
 
7.data types in c#
7.data types in c#7.data types in c#
7.data types in c#
 
Visula C# Programming Lecture 1
Visula C# Programming Lecture 1Visula C# Programming Lecture 1
Visula C# Programming Lecture 1
 
Day02 01 Advance Feature in C# DH TDT
Day02 01 Advance Feature in C# DH TDTDay02 01 Advance Feature in C# DH TDT
Day02 01 Advance Feature in C# DH TDT
 
C# simplified
C#  simplifiedC#  simplified
C# simplified
 
3rd june
3rd june3rd june
3rd june
 
Dot net guide for beginner
Dot net guide for beginner Dot net guide for beginner
Dot net guide for beginner
 
C sharp
C sharpC sharp
C sharp
 
Python basic
Python basicPython basic
Python basic
 
C++ to java
C++ to javaC++ to java
C++ to java
 
Beginning Java for .NET developers
Beginning Java for .NET developersBeginning Java for .NET developers
Beginning Java for .NET developers
 
A comparison between C# and Java
A comparison between C# and JavaA comparison between C# and Java
A comparison between C# and Java
 
Php i basic chapter 3
Php i basic chapter 3Php i basic chapter 3
Php i basic chapter 3
 
Microsoft C# programming basics
Microsoft C# programming basics  Microsoft C# programming basics
Microsoft C# programming basics
 
2.overview of c#
2.overview of c#2.overview of c#
2.overview of c#
 

Similar a C# basics

02. Primitive Data Types and Variables
02. Primitive Data Types and Variables02. Primitive Data Types and Variables
02. Primitive Data Types and VariablesIntro C# Book
 
VISUAL BASIC 6 - CONTROLS AND DECLARATIONS
VISUAL BASIC 6 - CONTROLS AND DECLARATIONSVISUAL BASIC 6 - CONTROLS AND DECLARATIONS
VISUAL BASIC 6 - CONTROLS AND DECLARATIONSSuraj Kumar
 
Visual Programing basic lectures 7.pptx
Visual Programing basic lectures  7.pptxVisual Programing basic lectures  7.pptx
Visual Programing basic lectures 7.pptxMrhaider4
 
C++ Course - Lesson 3
C++ Course - Lesson 3C++ Course - Lesson 3
C++ Course - Lesson 3Mohamed Ahmed
 
LECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdfLECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdfSHASHIKANT346021
 
LECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdfLECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdfShashikantSathe3
 
DITEC - Programming with C#.NET
DITEC - Programming with C#.NETDITEC - Programming with C#.NET
DITEC - Programming with C#.NETRasan Samarasinghe
 
2.overview of c++ ________lecture2
2.overview of c++  ________lecture22.overview of c++  ________lecture2
2.overview of c++ ________lecture2Warui Maina
 
C++11 - A Change in Style - v2.0
C++11 - A Change in Style - v2.0C++11 - A Change in Style - v2.0
C++11 - A Change in Style - v2.0Yaser Zhian
 
Array assignment
Array assignmentArray assignment
Array assignmentAhmad Kamal
 
Arrry structure Stacks in data structure
Arrry structure Stacks  in data structureArrry structure Stacks  in data structure
Arrry structure Stacks in data structurelodhran-hayat
 
Chapter2pp
Chapter2ppChapter2pp
Chapter2ppJ. C.
 

Similar a C# basics (20)

Chapter 2
Chapter 2Chapter 2
Chapter 2
 
For Beginners - C#
For Beginners - C#For Beginners - C#
For Beginners - C#
 
JAVA LESSON-01.pptx
JAVA LESSON-01.pptxJAVA LESSON-01.pptx
JAVA LESSON-01.pptx
 
02. Primitive Data Types and Variables
02. Primitive Data Types and Variables02. Primitive Data Types and Variables
02. Primitive Data Types and Variables
 
Chapter1.pptx
Chapter1.pptxChapter1.pptx
Chapter1.pptx
 
VISUAL BASIC 6 - CONTROLS AND DECLARATIONS
VISUAL BASIC 6 - CONTROLS AND DECLARATIONSVISUAL BASIC 6 - CONTROLS AND DECLARATIONS
VISUAL BASIC 6 - CONTROLS AND DECLARATIONS
 
Visual Programing basic lectures 7.pptx
Visual Programing basic lectures  7.pptxVisual Programing basic lectures  7.pptx
Visual Programing basic lectures 7.pptx
 
C++ Course - Lesson 3
C++ Course - Lesson 3C++ Course - Lesson 3
C++ Course - Lesson 3
 
LECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdfLECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdf
 
Lecture 7
Lecture 7Lecture 7
Lecture 7
 
LECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdfLECTURE 3 LOOPS, ARRAYS.pdf
LECTURE 3 LOOPS, ARRAYS.pdf
 
DITEC - Programming with C#.NET
DITEC - Programming with C#.NETDITEC - Programming with C#.NET
DITEC - Programming with C#.NET
 
unit 1 (1).pptx
unit 1 (1).pptxunit 1 (1).pptx
unit 1 (1).pptx
 
Javascript 101
Javascript 101Javascript 101
Javascript 101
 
CSC PPT 13.pptx
CSC PPT 13.pptxCSC PPT 13.pptx
CSC PPT 13.pptx
 
2.overview of c++ ________lecture2
2.overview of c++  ________lecture22.overview of c++  ________lecture2
2.overview of c++ ________lecture2
 
C++11 - A Change in Style - v2.0
C++11 - A Change in Style - v2.0C++11 - A Change in Style - v2.0
C++11 - A Change in Style - v2.0
 
Array assignment
Array assignmentArray assignment
Array assignment
 
Arrry structure Stacks in data structure
Arrry structure Stacks  in data structureArrry structure Stacks  in data structure
Arrry structure Stacks in data structure
 
Chapter2pp
Chapter2ppChapter2pp
Chapter2pp
 

Más de sagaroceanic11

Module 21 investigative reports
Module 21 investigative reportsModule 21 investigative reports
Module 21 investigative reportssagaroceanic11
 
Module 20 mobile forensics
Module 20 mobile forensicsModule 20 mobile forensics
Module 20 mobile forensicssagaroceanic11
 
Module 19 tracking emails and investigating email crimes
Module 19 tracking emails and investigating email crimesModule 19 tracking emails and investigating email crimes
Module 19 tracking emails and investigating email crimessagaroceanic11
 
Module 18 investigating web attacks
Module 18 investigating web attacksModule 18 investigating web attacks
Module 18 investigating web attackssagaroceanic11
 
Module 17 investigating wireless attacks
Module 17 investigating wireless attacksModule 17 investigating wireless attacks
Module 17 investigating wireless attackssagaroceanic11
 
Module 04 digital evidence
Module 04 digital evidenceModule 04 digital evidence
Module 04 digital evidencesagaroceanic11
 
Module 03 searching and seizing computers
Module 03 searching and seizing computersModule 03 searching and seizing computers
Module 03 searching and seizing computerssagaroceanic11
 
Module 01 computer forensics in todays world
Module 01 computer forensics in todays worldModule 01 computer forensics in todays world
Module 01 computer forensics in todays worldsagaroceanic11
 
Virtualisation with v mware
Virtualisation with v mwareVirtualisation with v mware
Virtualisation with v mwaresagaroceanic11
 
Virtualisation overview
Virtualisation overviewVirtualisation overview
Virtualisation overviewsagaroceanic11
 
Introduction to virtualisation
Introduction to virtualisationIntroduction to virtualisation
Introduction to virtualisationsagaroceanic11
 
2 the service lifecycle
2 the service lifecycle2 the service lifecycle
2 the service lifecyclesagaroceanic11
 
1 introduction to itil v[1].3
1 introduction to itil v[1].31 introduction to itil v[1].3
1 introduction to itil v[1].3sagaroceanic11
 
Visual studio 2008 overview
Visual studio 2008 overviewVisual studio 2008 overview
Visual studio 2008 overviewsagaroceanic11
 

Más de sagaroceanic11 (20)

Module 21 investigative reports
Module 21 investigative reportsModule 21 investigative reports
Module 21 investigative reports
 
Module 20 mobile forensics
Module 20 mobile forensicsModule 20 mobile forensics
Module 20 mobile forensics
 
Module 19 tracking emails and investigating email crimes
Module 19 tracking emails and investigating email crimesModule 19 tracking emails and investigating email crimes
Module 19 tracking emails and investigating email crimes
 
Module 18 investigating web attacks
Module 18 investigating web attacksModule 18 investigating web attacks
Module 18 investigating web attacks
 
Module 17 investigating wireless attacks
Module 17 investigating wireless attacksModule 17 investigating wireless attacks
Module 17 investigating wireless attacks
 
Module 04 digital evidence
Module 04 digital evidenceModule 04 digital evidence
Module 04 digital evidence
 
Module 03 searching and seizing computers
Module 03 searching and seizing computersModule 03 searching and seizing computers
Module 03 searching and seizing computers
 
Module 01 computer forensics in todays world
Module 01 computer forensics in todays worldModule 01 computer forensics in todays world
Module 01 computer forensics in todays world
 
Virtualisation with v mware
Virtualisation with v mwareVirtualisation with v mware
Virtualisation with v mware
 
Virtualisation overview
Virtualisation overviewVirtualisation overview
Virtualisation overview
 
Virtualisation basics
Virtualisation basicsVirtualisation basics
Virtualisation basics
 
Introduction to virtualisation
Introduction to virtualisationIntroduction to virtualisation
Introduction to virtualisation
 
6 service operation
6 service operation6 service operation
6 service operation
 
5 service transition
5 service transition5 service transition
5 service transition
 
4 service design
4 service design4 service design
4 service design
 
3 service strategy
3 service strategy3 service strategy
3 service strategy
 
2 the service lifecycle
2 the service lifecycle2 the service lifecycle
2 the service lifecycle
 
1 introduction to itil v[1].3
1 introduction to itil v[1].31 introduction to itil v[1].3
1 introduction to itil v[1].3
 
Visual studio 2008 overview
Visual studio 2008 overviewVisual studio 2008 overview
Visual studio 2008 overview
 
Vb introduction.
Vb introduction.Vb introduction.
Vb introduction.
 

Último

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Último (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

C# basics

  • 1. • C# Language Basics • Variables and Data Types • Array, ArrayList, Enumerations • Operator & Math Functions • Type Conversions • The DateTime and TimeSpan Types • Conditional Logic • Loops • Methods & Method Overloading • Parameters (Optional & Named) • Delegates
  • 2. • Case Sensitivity • Commenting // A single-line C# comment. /* A multiple-line C# comment. */ • Statement Termination • Blocks { // Code statements go here. } • Declaration, Assignment & Initializers int errorCode; string myName; errorCode = 10; myName = "Matthew"; int errorCode = 10; string myName ="Matthew";
  • 3. C# Type VB Type .Net System type Signed? Bytes Occupied Possible Values sbyte byte SByte Byte SByte Byte Yes No 1 1 -128 to 127 0 to 255 short Short Int16 Yes 2 -32768 to 32767 int Integer Int32 Yes 4 -2147483648 to 2147483647 long Long Int64 Yes 8 -9223372036854775808 to 9223372036854775807 ushort UShort Uint16 No 2 0 to 65535 uint UInteger UInt32 No 4 0 to 4294967295 ulong ULong Uint64 No 8 0 to 18446744073709551615
  • 4. C# Type VB Type .Net System Type Sign ed? Bytes Occupied Possible Values float Float Single Yes 4 Approx. ±1.5 x 10-45 to ±3.4 x 1038 with 7 significant figures double Double Double Yes 8 Approx. ±5.0 x 10-324 to ±1.7 x 10308 with 15 or 16 significant figures decimal Decimal Decimal Yes 12 Approx. ±1.0 x 10-28 to ±7.9 x 1028 with 28 or 29 significant figures char Char Char N/A 2 Any Unicode character (16 bit) bool Boolean Boolean N/A 1 / 2 true or false
  • 5. • " (double quote) • n (new line) • t (horizontal tab) • (backward slash) // A C# variable holding the // c:MyAppMyFiles path. path = "c:MyAppMyFiles"; Alternatively, you can turn off C# escaping by preceding a string with an @ symbol, as shown here: path = @"c:MyAppMyFiles";
  • 6. Arrays allow you to store a series of values that have the same data type. // Create an array with four strings (from index 0 to index 3). // You need to initialize the array with the new keyword in order to use it. string[] stringArray = new string[4]; // Create a 2x4 grid array (with a total of eight integers). int[,] intArray = new int[2, 4]; // Create an array with four strings, one for each number from 1 to 4. string[] stringArray = {"1", "2", "3", "4"}; // Create a 4x2 array (a grid with four rows and two columns). int[,] intArray = {{1, 2}, {3, 4}, {5, 6}, {7, 8}};
  • 7. ArrayList dynamicList = new ArrayList(); // Add several strings to the list. The ArrayList is not strongly typed, so you can add any data type dynamicList.Add("one"); dynamicList.Add(2); dynamicList.Add(true); // Retrieve the first string. Notice that the object must be converted to a // string, because there's no way for .NET to be certain what it is. string item = Convert.ToString(dynamicList[0]);
  • 8. An enumeration is a group of related constants, each of which is given a descriptive name. Each value in an enumeration corresponds to a preset integer. enum UserType { Admin, Guest, Invalid }
  • 9. +, -, *, / ,% are basic operators To use the math operations, you invoke the methods of the System.Math class. myValue = Math.Round(42.889, 2); // myValue = 42.89 myValue = Math.Abs(-10); // myValue = 10.0 myValue = Math.Log(24.212); // myValue = 3.18.. (and so on) myValue = Math.PI; // myValue = 3.14.. (and so on)
  • 10. Converting information from one data type to another Conversions are of two types: widening and narrowing. Widening conversions always succeed. For example, you can always convert a 32-bit integer into a 64-bit integer. int mySmallValue; long myLargeValue; mySmallValue = Int32.MaxValue; myLargeValue = mySmallValue; Or mySmallValue = (int)myLargeValue; int myInt=1000; short count; count=(short)myInt;
  • 11. Converting information from one data type to another String myString; int myInteger=100; myString=myInteger.ToString(); String countString=“10”; int count=Convert.ToInt32(countString); or int count=Int32.Parse(countString);
  • 12. Length() : myString.Length() ToUpper(), ToLower() myString.ToUpper() Trim() myString.Trim() Substring() myString.SubString(0,2) StartsWith(), EndsWith() myString.StartsWith(“pre”) PadLeft(), PadRight() myString.PadLeft(5,”*”) Insert() myString.Insert(1,”pre) Remove() myString.Remove(0,2) Split() myString.Split(“,”) Join() myString1.Join(myString2) Replace() myString.Replace(“a”,”b”)
  • 13. DateTime and Timespane data types have built-in methods and properties Methods & Properties of DateTime : Now Today Year, Date, Month ,Hour, Minute, Second, and Millisecond Add() and Subtract() AddYears(), AddMonths(), AddDays(), AddHours, AddMinutes() DaysIn Month() Methods and Properties of TimeSpan: Days, Hours, Minutes, Seconds, Milliseconds TotalDays, TotalHours, TotalMinutes, TotalSeconds, TotalMilliseconds Add() and Subtract() FromDays(), FromHours(), From Minutes(), FromSeconds()
  • 14. DateTime myDate = DateTime.Now; myDate = myDate.AddDays(100); DateTime myDate2 = DateTime.Now.AddHours(3000); TimeSpan difference; difference = myDate2.Subtract(myDate1); double numberOfMinutes; numberOfMinutes = difference.TotalMinutes; // Adding a TimeSpan to a DateTime creates a new DateTime. DateTime myDate1 = DateTime.Now; TimeSpan interval = TimeSpan.FromHours(3000); DateTime myDate2 = myDate1 + interval; // Subtracting one DateTime object from another produces a TimeSpan. TimeSpan difference; difference = myDate2 - myDate1;
  • 15. All conditional logic starts with a condition: a simple expression that can be evaluated to true or false. Your code can then make a decision to execute different logic depending on the outcome of the condition. To build a condition, you can use any combination of literal values or variables along with logical operators == Equal to != Not Equal to < Less than > Greater than <= Less than or equal to >= Greater than or equal to && Logical and || Logical or
  • 16. The if Statement if (myNumber > 10) { // Do something. } else if (myString == "hello") { // Do something. } else { // Do something The switch Statement switch (myNumber) { case 1: // Do something. break; case 2: // Do something. break; default: // Do something. break; }
  • 17. Loops allow you to repeat a segment of code multiple times. C# has three basic types of loops • You can loop a set number of times with a for loop. • You can loop through all the items in a collection of data using a foreach loop. • You can loop while a certain condition holds true with a while or do…while loop. THE FOR LOOP string[] stringArray = {"one", "two", "three"}; for (int i = 0; i < stringArray.Length; i++) { System.Diagnostics.Debug.Write(stringArray[i] ); } THE FOREACH LOOP foreach (string element in stringArray) { System.Diagnostics.Debug.Write(element ); }
  • 18. THE WHILE LOOP int i = 0; while (i < 10) { i += 1; // This code executes ten times. } You can also place the condition at the end of the loop using the do…while syntax. In this case, the condition is tested at the end of each pass through the loop: THE DO WHILE LOOP int i = 0; do { i += 1; // This code executes ten times. } while (i < 10);
  • 19. A method also known as function is a named grouping of one or more lines of code. Each method will perform a distinct, logical task. By breaking your code down into methods, you not only simplify your life, but you also make it easier to organize your code into classes // This method doesn't return any information. void MyMethodNoReturnedData() { // Code goes here. } // This method returns an integer. int MyMethodReturnedData() { // As an example, return the number 10. return 10; }
  • 20. Optional Parameter private string GetUserName(int ID, bool useShortForm = false) { // Code here. } name = GetUserName(401, true); name = GetUserName(401); Use Named parameter for multiple optional parameters: private decimal GetSalesTotalForRegion(int regionID, decimal minSale = 0, decimal maxSale = Decimal.MaxValue, bool includeTax = false) { // Code here. } total = GetSalesTotalForRegion(523, maxSale: 5000);
  • 21. Delegates allow you to create a variable that “points” to a method. private string TranslateEnglishToFrench(); { } private delegate string translateLanguage(string inputString); translateLanguage translate; translate=TranslateEnglishToFrench; string frenchString; frenchString=translate(“Hello”); You can make delegate point to any other function also if it has same signature
  • 22. private string TranslateEnglishToSpanish(); { } translate=TranslateEnglishToSpanish; string spanishString; spanishString=translate(“Hello”); private string TranslateEnglishToGerman(); { } translate=TranslateEnglishToGerman; string germanString; germanString=translate(“Hello”);
  • 23. It’s impossible to do justice to an entire language in a single chapter. However, if you’ve programmed before, you’ll find that this chapter provides all the information you need to get started with the C# language. As you work through the full ASP.NET examples in the following chapters, you can refer to this chapter to clear up any language issues. In the next chapter, you’ll learn about more important language concepts and the object-oriented nature of .NET.