Tablice w Java

Nadszedł najwyższy moment żeby zapoznać się ze zmiennymi tablicowymi w Java. Jakiś czas tamu poznałeś już podstawowe typy proste oraz typ String, następnym krokiem są właśnie tablice!

Zanim przejdziemy jednak do opisu tablic w Java przypomnijmy sobie czasy szkolne. Konkretnie, chcę nawiązać do dziennika lekcji obecnego w każdej szkolnej klasie. Każdy dziennik zawierał uporządkowaną alfabetycznie listę uczniów. Lista ta nadawała nie jako każdemu uczniowi unikalny numer, który czasem był używany do wywoływania do tablicy lub odpowiedzi (“Numer osiem, Gruca do tablicy!“). Jak już wspomniałem kolejność uczniów zazwyczaj była alfabetyczna, ustalana raz na początku roku szkolnego. Jeżeli zdarzyło się, że do danej klasy dochodził nowy uczeń w ciągu roku, to dostawał on pierwszy wolny numer (dopisywany był na końcu listy). Każdy z nas powinien wiedzieć jak to działa…

Read On…

Konwersja typu String do wartości liczbowych

Dopełniając wiedzę na temat typu String zajmiemy się dzisiaj konwersją z tego typu do poznanych wcześniej typów:

  • int
  • long
  • short
  • float
  • double

W poprzednim wpisie omówiona została kwestia łączenia Stringów (konkatenacja) oraz konwersja wyżej wymienionych typów zmiennych do typu String.

Dla szybkiego przypomnienia. W Java Stringi łączy się za pomocą operatora + (plus):

Powyższy kod spowoduje, że w zmiennej sentence znajdzie się ciąg: Ala ma kota!.

Natomiast żeby zamienić dowolny typ liczbowy na typ String posłużyć się następującym kodem:

JVM zamieni nam posłusznie obie podane liczby na typ String.

Po tym krótkim przypomnieniu możemy przejść do sedna tego postu, a mianowicie jak dokonać operacji odwrotnej tj. z typu String uzyskać typ liczbowy?

Przede wszystkim musimy mieć pewność że dany ciąg znakowy zawiera odpowiednią wartość. Co przez to rozumiem? Na przykład to, że w Stringu który będziemy konwertować nie ma liter oraz to że w momencie konwersji do typu int nasz wejściowy ciąg znaków nie zawiera kropki która to oddziela część całkowitą od ułamkowej. Co się w takiej sytuacji stanie? Otóż JVM się na nas trochę obrazi i rzuci wyjątkiem… wyjątkami dokładniej później.

Napiszmy teraz program który doda nam dwie liczby:

Po uruchomieniu tego programu na ekranie zobaczymy napis: Wynikiem dodania 2 do 3 jest 5.

Najciekawszą rzeczą w tym programie jest linia piąta. W której to konwertujemy dwa Stringi do typu int używając wywołania: Integer.valueOf().

A co w przypadku innych typów niż int? Dla pozostałych typów istnieją analogiczne wywołania:

Dostrzegasz analogię? Każdy typ liczbowy w Java posiada odpowiednik pisany z dużej litery na którym można wywołać statyczną metodę valueOf z typem String jako parametr. Metoda ta skonwertuje podany argument do żądanej wartości liczbowej.

Ale dlaczego muszę napisać Integer.valueOf zamiast po prostu int.valueOf lub Float.valueOf zamiast float.valueOf? Cóż, żeby odpowiedzieć na to pytanie musimy poznać trochę dokładniej javę. Niestety na razie musisz to przyjąć jako prawdę objawioną. W jednym z kolejnych wpisów wyjaśnię Tobie dlaczego tak właśnie jest.

Jak łączyć ze sobą ciągi znaków (String) w Java

W poprzednim wpisie poznaliśmy typ String. Wiesz już, że tekst pomiędzy podwójnymi cudzysłowami w Java jest właśnie typu String. Wiesz też jak zdeklarować zmienną tego typu oraz jak wypisać jej zawartość na ekranie… Ale co zrobić żeby dokleić “coś” to istniejącego już ciągu znaków? Lub jak połączyć istniejące ciągi znaków?

Read On…

Co to jest typ String w Java?

Do tej pory wszystkie zmienne jakie deklarowaliśmy były liczbami (zazwyczaj całkowitymi, typu int, lub rzeczywistymi (zmiennoprzecinkowymi), typu float). Nie będąc do końca tego świadomi praktycznie w każdym poprzednim programie używaliśmy typu String. Ale jako to? zapytasz.

Czym właściwie jest typ String? Otóż przechowuje on ciąg znaków, inaczej mówiąc tekst. Jak pewnie zaważyłeś, wszystkie teksty które wypisywane były na ekranie były umieszczone pomiędzy podwójnymi cudzysłowami(“”). Więc nie świadomi do końca istnienia tego typu wykorzystywaliśmy go w naszych programach. Każdy tekst który wypisaliśmy na ekranie był właśnie typu String.

Oczywiście deklaracja zmiennej typu String wygląda identycznie jak deklaracja dowolnej innej zmiennej:

możemy również taką zmienną wypisać na ekranie:

Ot tyle podstaw o typie String. Musisz zapamiętać dwie rzeczy:

  • typ ten przechowuje tekst,
  • dowolny ciąg znaków (tekst) pomiędzy podwójnymi cudzysłowami jest właśnie typu String.

Zasięg zmiennych

Przyjrzyjmy się przykładowej aplikacji:

Read On…