title: C#
date: 2021-12-14 12:22:00
background: bg-[#8c4c8a]
tags:
- object-oriented
- class
categories:
- Programming
intro: |
C# quick reference cheat sheet that provides basic syntax and methods.
Getting Started
Hello.cs
class Hello {
// main method
static void Main(string[] args)
{
// Output: Hello, world!
Console.WriteLine("Hello, world!");
}
}
Compiling and running (make sure you are in the project directory)
$ dotnet run
Hello, world!
Variables
int intNum = 9;
long longNum = 9999999;
float floatNum = 9.99F;
double doubleNum = 99.999;
decimal decimalNum = 99.9999M;
char letter = 'D';
bool @bool = true;
string site = "quickref.me";
var num = 999;
var str = "999";
var bo = false;
Primitive Data Types
Data Type |
Size |
Range |
int |
4 bytes |
-2^31^ ^to^ 2^31^-1 |
long |
8 bytes |
-2^63^ ^to^ 2^63^-1 |
float |
4 bytes |
6 ^to^ 7 decimal digits |
double |
8 bytes |
15 decimal digits |
decimal |
16 bytes |
28 ^to^ 29 decimal digits |
char |
2 bytes |
0 ^to^ 65535 |
bool |
1 bit |
true / false |
string |
2 bytes per char |
N/A |
{.show-header} |
|
|
Comments
// Single-line comment
/* Multi-line
comment */
// TODO: Adds comment to a task list in Visual Studio
/// Single-line comment used for documentation
/** Multi-line comment
used for documentation **/
Strings
string first = "John";
string last = "Doe";
// string concatenation
string name = first + " " + last;
Console.WriteLine(name); // => John Doe
See: Strings
User Input
Console.WriteLine("Enter number:");
if(int.TryParse(Console.ReadLine(),out int input))
{
// Input validated
Console.WriteLine($"You entered {input}");
}
Conditionals
int j = 10;
if (j == 10) {
Console.WriteLine("I get printed");
} else if (j > 10) {
Console.WriteLine("I don't");
} else {
Console.WriteLine("I also don't");
}
Arrays
char[] chars = new char[10];
chars[0] = 'a';
chars[1] = 'b';
string[] letters = {"A", "B", "C"};
int[] mylist = {100, 200};
bool[] answers = {true, false};
Loops
int[] numbers = {1, 2, 3, 4, 5};
for(int i = 0; i < numbers.Length; i++) {
Console.WriteLine(numbers[i]);
}
foreach(int num in numbers) {
Console.WriteLine(num);
}
C# Strings
String concatenation
string first = "John";
string last = "Doe";
string name = first + " " + last;
Console.WriteLine(name); // => John Doe
String interpolation
string first = "John";
string last = "Doe";
string name = $"{first} {last}";
Console.WriteLine(name); // => John Doe
String Members {.row-span-2}
Member |
Description |
Length |
A property that returns the length of the string. |
Compare() |
A static method that compares two strings. |
Contains() |
Determines if the string contains a specific substring. |
Equals() |
Determines if the two strings have the same character data. |
Format() |
Formats a string via the {0} notation and by using other primitives. |
Trim() |
Removes all instances of specific characters from trailing and leading characters. Defaults to removing leading and trailing spaces. |
Split() |
Removes the provided character and creates an array out of the remaining characters on either side. |
{.show-header} |
|
Verbatim strings
string longString = @"I can type any characters in here !#@$%^&*()__+ '' \n \t except double quotes and I will be taken literally. I even work with multiple lines.";
Member Example
// Using property of System.String
string lengthOfString = "How long?";
lengthOfString.Length // => 9
// Using methods of System.String
lengthOfString.Contains("How"); // => true
Misc
General .NET Terms {.col-span-2}
Term |
Definition |
Runtime |
A collection of services that are required to execute a given compiled unit of code. |
Common Language Runtime (CLR) |
Primarily locates, loads, and managed .NET objects. The CLR also handles memory management, application hosting, coordination of threads, performaing security checks, and other low-level details. |
Managed code |
Code that compiles and runs on .NET runtime. C#/F#/VB are examples. |
Unmanaged code |
Code that compiles straight to machine code and cannot be directly hosted by the .NET runtime. Contains no free memory management, garbage collection, etc. DLLs created from C/C++ are examples. |
{.show-header} |
|