Ćwiczenie — drukowanie wartości literałów

Ukończone

W tym ćwiczeniu będziesz drukować komunikaty zawierające inne typy danych i dowiedzieć się, dlaczego typy danych są tak ważne w języku C#.

Co to jest wartość dosłowna?

Wartość literału to stała wartość, która nigdy się nie zmienia. Wcześniej wyświetliłeś dosłowny ciąg w konsoli wyjściowej. Innymi słowy, dosłownie chciałeś, aby ciąg znaków Halfanumerycznych , e, l, l, oitd. był wyświetlany w konsoli wyjściowej.

Użyj typu danych ciągu za każdym razem, gdy masz alfanumeryczne wyrazy, frazy lub dane do prezentacji, a nie obliczenia. Jakie inne rodzaje danych można wyświetlić na wyjściu?

Ćwiczenie — drukowanie różnych typów danych literału

W języku C#istnieje wiele typów danych. Jednak w miarę rozpoczynania pracy musisz wiedzieć tylko o pięciu lub sześciu typach danych, ponieważ obejmują one większość scenariuszy. Wyświetlmy przykładową wartość danego typu danych jako wynik.

Edytor kodu języka C# jest dostępny do użycia bezpośrednio w przeglądarce: Edytor kodu języka C#. Ten edytor zapewnia lekkie środowisko do pisania, uruchamiania i testowania kodu C# bez konieczności instalowania jakiegokolwiek oprogramowania na komputerze lokalnym.

Używanie literałów znaków

Jeśli chcesz wydrukować tylko jeden znak alfanumeryczny na ekranie, możesz utworzyć literał znaku , otaczając jeden znak alfanumeryczny w pojedynczych cudzysłowach. Termin char jest krótki dla znaku. W języku C#ten typ danych oficjalnie nosi nazwę "char", ale często nazywa się "znakiem".

  1. Otwórz Edytor kodu języka C# w nowym oknie lub karcie przeglądarki.

    Okna przeglądarki można umieścić obok siebie, aby można było zapoznać się z tymi instrukcjami podczas pracy w Edytorze kodu języka C#.

  2. Dodaj następujący wiersz kodu w edytorze kodu:

    Console.WriteLine('b');
    
  3. Obserwuj wprowadzony kod.

    Zwróć uwagę, że litera b jest otoczona pojedynczym cudzysłowem 'b'. Pojedyncze cudzysłowy tworzą literał znaku. Pamiętaj, że użycie podwójnych cudzysłowów powoduje utworzenie string typu danych.

  4. Naciśnij przycisk Uruchom, ▶️ aby uruchomić kod. Powinien zostać wyświetlony następujący wynik w oknie danych wyjściowych:

    b
    

Jeśli wprowadzisz następujący kod:

Console.WriteLine('Hello World!');

Zostanie wyświetlony następujący błąd:

CS1012: Too many characters in character literal

Zwróć uwagę na znaki pojedynczych cudzysłowów otaczające Hello World!. W przypadku używania pojedynczych cudzysłowów kompilator języka C# oczekuje pojedynczego znaku. Jednak w tym przypadku użyto składni literału znaku, ale zamiast tego podano 12 znaków.

Podobnie jak string w przypadku typu danych, należy użyć char zawsze, gdy masz jeden znak alfanumeryczny do prezentacji (nie obliczenia).

Używanie literałów liczb całkowitych

Jeśli chcesz wyświetlić wartość liczbową całkowitą (bez ułamków) w konsoli wyjściowej, możesz użyć literału int. Termin int jest krótki dla liczby całkowitej, którą można rozpoznać na podstawie nauki matematyki. W języku C#ten typ danych jest oficjalnie nazywany "int", ale często określany jako "liczba całkowita". Literał int nie wymaga żadnych innych operatorów, takich jak string lub char.

  1. Dodaj następujący wiersz kodu w edytorze kodu:

    Console.WriteLine(123);
    
  2. Naciśnij przycisk Uruchom, ▶️ aby uruchomić kod. W konsoli wyjściowej powinny zostać wyświetlone następujące wyniki:

    123
    

Używanie literałów zmiennoprzecinkowych

Liczba zmiennoprzecinkowa to liczba zawierająca liczbę dziesiętną, na przykład 3,14159. Język C# obsługuje trzy typy danych reprezentujące liczby dziesiętne: float, doublei decimal. Każdy typ obsługuje różne stopnie dokładności.

Float Type    Precision
----------------------------
float         ~6-9 digits
double        ~15-17 digits
decimal        28-29 digits

W tym miejscu precyzja odzwierciedla liczbę cyfr po przecinku, które są dokładne.

  1. Dodaj następujący wiersz kodu w edytorze kodu:

    Console.WriteLine(0.25F);
    

    Aby utworzyć literał, dołącz literę floatF po numerze. W tym kontekście element F jest tzw. sufiksem literału. Sufiks literału informuje kompilator, że chcesz pracować z wartością float typu. Można użyć małego f lub wielkiej F litery jako sufiksu literału float.

  2. Naciśnij przycisk Uruchom, ▶️ aby uruchomić kod. W konsoli wyjściowej powinny zostać wyświetlone następujące wyniki:

    0.25
    

    Zwróć uwagę, że float typ danych jest najmniej precyzyjny, dlatego najlepiej użyć tego typu danych dla stałych wartości ułamkowych, aby uniknąć nieoczekiwanych błędów obliczeniowych.

  3. Dodaj następujący wiersz kodu w edytorze kodu:

    Console.WriteLine(2.625);
    

    Aby utworzyć double literał, wystarczy wprowadzić liczbę dziesiętną. Kompilator domyślnie określa double literał, gdy liczba dziesiętna jest wprowadzana bez sufiksu literału.

  4. Naciśnij przycisk Uruchom, ▶️ aby uruchomić kod. Powinien zostać wyświetlony następujący wynik w oknie danych wyjściowych:

    2.625
    
  5. Dodaj następujący wiersz kodu w edytorze kodu:

    Console.WriteLine(12.39816m);
    

    Aby utworzyć literał dziesiętny, dołącz literę m po liczbie. W tym kontekście element m jest tzw. sufiksem literału. Sufiks literału informuje kompilator, że chcesz pracować z wartością decimal typu. Można użyć małego m lub wielkiej M litery jako sufiksu literału decimal.

  6. Naciśnij przycisk Uruchom, ▶️ aby uruchomić kod. W konsoli wyjściowej powinny zostać wyświetlone następujące wyniki:

    12.39816
    

Używanie literałów logicznych

Jeśli chcesz wydrukować wartość reprezentującą true lub false, możesz użyć literału logicznego.

bool Termin jest krótki dla wartości logicznej. W języku C# są one oficjalnie określane jako "bool", ale często programiści używają terminu "Boolean".

  1. Dodaj następujące wiersze kodu w edytorze kodu:

    Console.WriteLine(true);
    Console.WriteLine(false);
    
  2. Naciśnij przycisk Uruchom, ▶️ aby uruchomić kod. W konsoli wyjściowej powinny zostać wyświetlone następujące wyniki:

    True
    False
    

Literały bool reprezentują ideę prawdy i fałszu. Kiedy zaczniesz dodawać logikę decyzyjną do aplikacji, będziesz często używać wartości bool. Obliczysz wyrażenia, aby sprawdzić, czy wyrażenie ma wartość true, czy false.

Dlaczego warto podkreślić typy danych?

Typy danych odgrywają kluczową rolę w języku C#. W rzeczywistości nacisk na typy danych jest jednym z kluczowych funkcji wyróżniających języka C# w porównaniu z innymi językami, takimi jak JavaScript. Projektanci języka C# uważają, że mogą pomóc deweloperom uniknąć typowych usterek oprogramowania, wymuszając typy danych. Zobaczysz, że ta koncepcja rozwija się, gdy dowiesz się więcej o języku C#.

Typy danych definiują możliwości

Wcześniej widziałeś, że strings i chars są używane do "prezentacji, a nie obliczeń". Jeśli musisz wykonać operację matematyczną na wartościach liczbowych, należy użyć elementu int lub decimal. Jeśli masz dane używane do prezentacji lub manipulowania tekstem, powinieneś użyć typu danych string lub char.

Załóżmy, że musisz zebrać dane od użytkownika, takie jak numer telefonu lub kod pocztowy. W zależności od kraju/regionu, w którym mieszkasz, dane mogą składać się z znaków liczbowych. Jednak ponieważ rzadko wykonujesz obliczenia matematyczne na numerach telefonów i kodach pocztowych, wolisz używać string typu danych podczas pracy z nimi.

To samo można powiedzieć o bool. Jeśli musisz pracować ze słowami "true" i "false" w aplikacji, użyj polecenia string. Jeśli jednak musisz pracować z koncepcją true lub false podczas przeprowadzania oceny, użyj elementu bool.

Ważne jest, aby wiedzieć, że te wartości mogą wyglądać jak ich odpowiedniki w postaci ciągu znaków. Innymi słowy, można pomyśleć, że te instrukcje są takie same:

Console.WriteLine("123");
Console.WriteLine(123);

Console.WriteLine("true");
Console.WriteLine(true);

Jednak wydaje się, że tylko wyświetlany wynik jest podobny. Faktem jest, że rodzaje rzeczy, które można zrobić z podstawą int lub bool, będą inne niż ich odpowiedniki string.

Podsumowanie

Głównym wnioskiem jest to, że istnieje wiele typów danych, ale skupisz się na kilku na razie:

  • string w przypadku wyrazów, fraz lub danych alfanumerycznych do prezentacji, a nie obliczeń
  • char dla pojedynczego znaku alfanumerycznego
  • int dla liczby całkowitej
  • decimal dla liczby ze składnikiem ułamkowym
  • dla booltrue/false wartości