Konwersja danych
Poznaliśmy już operatory, więc to będzie dobre miejsce, aby pokazać jak one działają. Najpierw jednak kilka słów o konwersji typów danych. Jest kilka rodzajów funkcji konwertujących dostępnych w Visual Basic .Net. Ja natomiast pokaże wam ten rodzaj ,z którego będziemy korzystać w dalszych częściach naszego poradnika.
Napiszmy kod:
Dim value As String
Dim value2 As Integer
value = TextBox1.Text
value2 = CInt(value))
Teraz kilka słów wyjaśnień dla każdej linii kodu:- deklaracja zmiennej value typu String
- deklaracja zmiennej value2 typu Integer
- przypisanie tej zmiennej ciągu String z TextBox'a
- tu następuje konwersja: zmienna value jest równa przekonwertowanej wartości value na typ Integer
Poniżej w tabeli przedstawię zestawienie funkcji konwersji typów danych:
| Funkcja | Konwersja na: |
| CBool | Boolean |
| CByte | Byte |
| CChar | Char |
| CDate | Date |
| CDbl | Double |
| CDec | Decimal |
| CInt | Integer |
| CLng | Long |
| CObj | Object |
| CSByte | SByte |
| CShort | Short |
| CSng | Single |
| CStr | String |
| CUInt | UInteger |
| CULng | ULong |
| CUShort | UShort |
Działania arytmetyczne
Za pomocą dwóch TextBox'ów, Button'a i Label'a wykonamy sobie proste obliczenia arytmetyczne.Żeby wam naocznie pokazać czemu stosujemy konwersje dodajmy do Button'a kod:
Dim value As Integer
value = TextBox1.Text + TextBox2.Text
Label1.Text = value
wpisujemy do TextBox'ów cyfre 5, wciskamy przycisk i co się stało ? połączyliśmy łańcuchy tekstowe z obu TextBox'ów i w wyniku tego Label wyświetlił nam 55. Ale my nie chcieliśmy dodawać łańcuchów tekstowych, tylko liczby ! No to musimy nasz program poinstruować, że mamy taki zamiar. Napiszmy zatem odpowiedni kod: Dim value As Integer
value = CInt(TextBox1.Text) + CInt(TextBox2.Text)
Label1.Text = value)
I co się tutaj stało ? Nasze łańcuchy z TextBox'ów przekonwertowaliśmy na liczby. Teraz naciskając na Button, Label wyświetla nam spodziewaną wartość z dodawania dwóch liczb - czyli 10. Dodawanie więc mamy już za sobą.Wykonajmy teraz mnożenie liczb naturalnych w podobny sposób:
Dim value As Integer
value = CInt(TextBox1.Text) * CInt(TextBox2.Text)
Label1.Text = value
Label będzie nam wyświetlał wynik mnożeniaSpróbujmy więc wykonać dzielenie w podobny sposób:
Dim value As Integer
value = CInt(TextBox1.Text) / CInt(TextBox2.Text)
Label1.Text = value
Wykonujemy dzielenie np 5/4 i co się dzieje ? gdzie się podziała reszta z dzielenia ? nie ma? no i nie będzie! bo przecież zmienna Integer nie obsługuje liczb zmiennoprzecinkowych tylko całkowite. Do tego celu wartość value musimy przekonwertować na typ Single, wtedy reszta z dzielenia będzie wyświetlała się w Label. Wypróbujmy więc kod: Dim value As Single
value = CSng(TextBox1.Text) / CSng(TextBox2.Text)
Label1.Text = value
Podobne działania arytmetyczne możemy wykonywać na wszystkich operatorach arytmetycznych.
Mam nadzieje, że jest to dla was zrozumiałe, jeśli nie to nic straconego, po pewnym czasie wszystko się zacznie klarować.
Następne poradniki będą już bardziej nastawione na praktyczne programowanie.
Utworzono 09.09.2015
Brak komentarzy:
Prześlij komentarz