Integers (ακέραιοι)
Τύποι |
.NET |
Μέγεθος |
Σειρά |
sbyte |
System.SByte |
1 byte |
-128 μέχρι 127 |
byte |
System.Byte |
1 byte |
0 μέχρι 255 |
short |
System.IUInt16 |
2 byte |
-32,768 μέχρι 32,767 |
ushort |
System.Uint16 |
2byte |
0 μέχρι 65,535 |
int |
System.Int32 |
4 byte |
-2,147,483,648 μέχρι 2,147,483,647 |
uint |
System.Uint32 |
4 byte |
0 μέχρι 4,294,967,295 |
long |
System. Int64 |
8 byte |
-9,223,372,036,854,775,808 μέχρι 9,223,372,036,854,775,807 |
ulong |
System.Uint64 |
8 byte |
0 μέχρι 18,446,744,073,709,551,615 |
Floating point Number (μεταβλητές κινητής υποδιαστολής)
Τύποι |
.NET |
Μέγεθος |
Σειρά |
Float |
System.Single |
4 byte |
1.5 x 10-45 μέχρι 3.4 x 1038 |
Double |
System.Double |
8 byte |
5.0 x 10-324 μέχρι 1.7 x 10308 |
Decimal |
System.Decimal |
16 byte |
1.0 x 10-28 μέχρι 7.9 x 1028 |
Οι μεταβλητές περιέχουν μια τιμή, η οποία μπορεί να μεταβληθεί κατά την διάρκεια εκτέλεσης του προγράμματος.
Για να χρησιμοποιηθεί όμως μια μεταβλητή πρέπει πρώτα να δηλωθεί, να της δοθεί δηλαδή ένα όνομα και να επιλεγεί ο τύπος δεδομένων που θα αποθηκεύει. Η δήλωση γίνεται γράφοντας έναν τύπο δεδομένων ακολουθούμενο από ένα όνομα.
1. Παράδειγμα (Byte):
static void Main() {
byte MyNumber = 254;
Console.WriteLine(MyNumber); //Εμφανίζει 254
MyNumber++;
// Συν 1 -> 255
Console.WriteLine(MyNumber); //Εμφανίζει 255
MyNumber++;
// Συν 1 -> 0 (όριο 255)
Console.WriteLine(MyNumber); //Εμφανίζει 0
MyNumber++;
// Συν 1 -> 1
Console.WriteLine(MyNumber); //Εμφανίζει 1
}
2. Παράδειγμα (int/float)
Με Int
static void Main()
//Σε περίπτωση που Δηλώσουμε 2 ακεραίους INT
{
//Δηλώνουμε 2 ακεραίους
INT int A = 10; int B = 3;
//διαιρούμε 10/3
int apotelesma = A/B;
// Μας εμφανίζει 3 και Οχι 3,333...
Console.WriteLine(apotelesma);
}
Με Float
static void Main()
//Σε περίπτωση που Δηλώσουμε 2 ακεραίους Single
{
//Δηλώνουμε 2 ακεραίους Single ή double ή float
Single A = 10; Single B = 3;
//διαιρούμε 10/3
Single apotelesma = A/B;
// Μας 3,333...
Console.WriteLine(apotelesma);
}
3. Παράδειγμα (Float)
static void Main()
{
float apostasi;
float xronos;
float taxitita;
apostasi = 0.1f;
// 100m είναι 0.1 km
// για 9.87 δευτερόλεπτα είναι 9.87/60*60 h
xronos = 9.87f / 3600;
taxitita = apostasi / xronos;
Console.WriteLine("Η μέση ταχύτητα είναι {0} km/h", taxitita);
}
4. Παράδειγμα (Int/Long):
static void Main()
{
int x = 10000;
int y = 20000;
//Σε αυτό οι μεταβλητές "int" μετατρέπονται σε "long"
//Δεν χρειάζεται conversion από το ‘int’ σε ‘long’,γίνεται αυτόματα.
int total;
total = x * y;
Console.WriteLine("Το αποτέλεσμα είναι:" + total);
}
Strings & chars (Συμβολοσειρές και χαρακτήρες)
Συμβολοσειρά (string) είναι μια σειρά αλφαριθμητικών χαρακτήρων (γενικά εκτυπώσιμων συμβόλων ASCII). Όταν λέμε σειρά εννοούμε διαδοχικές θέσεις μνήμης που μπορούν να αντιμετωπισθούν σαν ένα σύνολο διατεταγμένων στοιχειωδών δεδομένων.
Η συμβολοσειρά είναι ένας ειδικός τύπος πίνακα με δεδομένα του τύπου char και με τερματισμό μέσω του μηδενικού χαρακτήρα.
Παράδειγμα:
static void Main()
{
//το Α = StudentGuru
string A = "StudentGuru";
//B = με το πρώτο χαρακτήρα της μεταβλητής Α άρα = "S"
char B = A[0]; Console.WriteLine(B);
// εκτυπώνει στην κονσόλα.
Console.WriteLine(A);
// εκτυπώνει στην κονσόλα.
//Τώρα το B = με το τρίτο χαρακτήρα της μεταβλητής Α άρα ="u"
B=A[2];
Console.WriteLine(B);
// εκτυπώνει στην κονσόλα.
}
Bool τιμές
Ο τύπος bool έχει δύο σταθερές τιμές:
- την true
- και την false
Σημείωση: true = αληθές και false = εσφαλμένο, ψευδές.
Παράδειγμα:
static void Main()
{
bool CheckNumber;
Console.WriteLine("Typose studentguru");
string num = Console.ReadLine();
//εάν η μεταβλητή = studentguru
if (num =="studentguru")
{
CheckNumber = true;
//τότε το checkNumber = true
}
else
{
CheckNumber = false;
//διαφορετικά checkNumber = false
}
Console.WriteLine(CheckNumber);
}
Nullable Types
Ο όρος Null είναι μια ενδιαφέρουσα ιδέα στον κόσμο του προγραμματισμού και δεν είναι συνώνυμο με το «μηδέν» ή «κενό», αλλά «απροσδιόριστη».
Κάθε προγραμματιστή συχνά κατά τη διάρκεια της ανάπτυξης των εφαρμογών τους έχουν να κάνουν με τη λεγόμενη “τύπους τιμή δεδομένων” (τύποι αξία) ως int, double, bool, char κτλ. Αυτοί οι τύποι δεδομένων είναι οι βασικοί, είναι λίγο περίεργη σε ορισμένες περιπτώσεις, δεν μπορεί να οριστούν μηδενικές.
Ευτυχώς, η C # παρέχει ένα πολύ χρήσιμο εργαλείο:. Nullable Types δεδομένων. Αυτοί οι τύποι δεδομένων μπορούν να χρησιμοποιηθούν σε οποιοδήποτε σημείο του κώδικα όπου υπάρχει ανάγκη να έχουμε μια μεταβλητή που μπορεί να έχει αξίες.
1. Παράδειγμα σύνταξη:
- char? letter = 'a';
2. int? i = null;
3. int? i = 10;
4. double? d1 = 3.14;
5. bool? flag = null;
6. int?[] arr = new int?[10];
Το "var" δεν είναι συμβατό με αυτό Nullable Type: var? i = null; //Λάθος Η σωστή σύνταξη για το "var" είναι: var i = 4;
2. Παράδειγμα Nullable types
static void Main(string[] args)
{
int? num = null; //Nullable Types Σύνταξη
//Έλεγχος εάν η μεταβλητή num έχει τιμή
if (num.HasValue == true)
//αν ναι τύπωσε μας την τιμή
System.Console.WriteLine(num.Value);
Else
//αν όχι τύπωσε NULL
System.Console.WriteLine("NULL");
}
3. Άμεση Μετατροπή
int? n = null;
//int m1 = n; // Λάθος
int m2 = (int)n;
int m3 = n.Value;
4. Έμμεση μετατροπή
int? n1 = null;
int? n2;
n2 = 10; //Έμμεση μερατροπή
5. “??” Τελεστές Nullable
int? c = null;
// d = c, και το c είναι null, το d = -1.
int d = c ?? -1;
int? e = null;
int? f = null;
// g = e ή και f, εκτός εάν το e και το f = null, που για κάθε περίπτωση g = -1.
int g = e ?? f ?? -1;
bool? b = null;
if (b)
// Λάθος CS0266
{
}
Var Types
Η μεταβλητή δεν είναι άλλο από μια ονομασμένη θέση μνήμης που μπορεί να περιέχει δεδομένα οποιουδήποτε είδους. Με τον τύπο Var δεν χρειάζεται να σκεφτούμε πολύ σκληρά το πώς θα δηλώσουμε την μεταβλητή μας. Η var είναι εύχρηστη, διότι δεν χρειάζεται να αποφασίσετε αν θα χρησιμοποιήσετε System.String ή System.Int32. Ο compiler καθορίζει τον τύπο για μάς.
1. Παράδειγμα Var Types
Παράδειγμα:
static void Main()
{
var leksi = “studentGuru”;
var Arithmos = 21;
var MegArithmo = 219283746253;
var dekadiko = 2,19283746253;
}
Παρόμοια κατάσταση, αν έχετε μια απλή κλάση με το όνομα Person:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
static void Main()
{
var person = new Person();
person.Age = 21;
person.Name = “StudentGuru”;
}