Ohjelmointitaito (ict1td002, 12 op) Kevät 2008. 1. Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen raine.kauppinen@haaga-helia.



Samankaltaiset tiedostot
Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

Java-kielen perusteet

Java-kielen perusteet

Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi

7. Näytölle tulostaminen 7.1

2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4)

Java-kielen perusteita

Java-kielen perusteita

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen

Sisällys. 6. Muuttujat ja Java. Muuttujien nimeäminen. Muuttujien nimeäminen. salinovi tai syntymapaiva

6. Muuttujat ja Java 6.1

Olio-ohjelmointi Javalla

1. Omat operaatiot 1.1

Luokat ja oliot. Ville Sundberg

Sisällys. 6. Muuttujat ja Java. Muuttujien nimeäminen. Muuttujien nimeäminen. salinovi tai syntymapaiva

6. Muuttujat ja Java 6.1

Sisällys. 6. Muuttujat ja Java. Muuttujien nimeäminen. Muuttujien nimeäminen. Muuttujien nimeäminen. Muuttujan tyypin määritys. Javan tietotyypit:

Sisällys. 1. Omat operaatiot. Yleistä operaatioista. Yleistä operaatioista

Metodien tekeminen Javalla

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Taulukot & Periytyminen

4. Luokan testaus ja käyttö olion kautta 4.1

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes)

20. Javan omat luokat 20.1

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang

Ohjelmoinnin perusteet Y Python

13. Loogiset operaatiot 13.1

Ohjelmoinnin peruskurssi Y1

Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma.

Ohjelmointi 2 / 2010 Välikoe / 26.3

17. Javan omat luokat 17.1

Sisältö. 22. Taulukot. Yleistä. Yleistä

// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.

Ohjelmoinnin perusteet, syksy 2006

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Tietojen syöttäminen ohjelmalle. Tietojen syöttäminen ohjelmalle Scanner-luokan avulla

Sisältö. 2. Taulukot. Yleistä. Yleistä

Tietorakenteet. JAVA-OHJELMOINTI Osa 5: Tietorakenteita. Sisällys. Merkkijonot (String) Luokka String. Metodeja (public)

Sisällys. 19. Olio-ohjelmointia Javalla. Yleistä. Olioiden esittely ja alustus

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

13. Loogiset operaatiot 13.1

Ohjelmoinnin perusteet Y Python

7/20: Paketti kasassa ensimmäistä kertaa

Muuttujat ja kontrolli. Ville Sundberg

Ohjelmoinnin peruskurssi Y1

14. Hyvä ohjelmointitapa 14.1

Ohjelmointiharjoituksia Arduino-ympäristössä

19. Olio-ohjelmointia Javalla 19.1

8. Näppäimistöltä lukeminen 8.1

Taulukot. Taulukon käsittely. Tämän osan sisältö. Esimerkki. Taulukon esittely ja luonti. Taulukon alustaminen. Taulukon koko

812341A Olio-ohjelmointi, Olio-ohjelmoinnin peruskäsitteet ja Java-kieli

Harjoitus Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

Java-kielen perusteet

// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.

Ohjelmoinnin peruskurssi Y1

Taulukot. Jukka Harju, Jukka Juslin

Java-kielen perusteet

9. Periytyminen Javassa 9.1

Olion elinikä. Olion luominen. Olion tuhoutuminen. Olion tuhoutuminen. Kissa rontti = null; rontti = new Kissa();

12. Javan toistorakenteet 12.1

12. Javan toistorakenteet 12.1

17. Javan omat luokat 17.1

11. Javan valintarakenteet 11.1

8. Näppäimistöltä lukeminen 8.1

11. Javan toistorakenteet 11.1

5. HelloWorld-ohjelma 5.1

on ohjelmoijan itse tekemä tietotyyppi, joka kuvaa käsitettä

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä

Mikä yhteyssuhde on?

Ohjelmoinnin perusteet Y Python

Taulukot, silmukat ja muut joka koodin pikku veijarit

Luokka Murtoluku uudelleen. Kirjoitetaan luokka Murtoluku uudelleen niin, että murtolukujen sieventäminen on mahdollista.

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä

Lohkot. if (ehto1) { if (ehto2) { lause 1;... lause n; } } else { lause 1;... lause m; } 16.3

1. ohjelman selitystä Muutamien ohjelman yksityiskohtien läpikäyntiä

Lohkot. if (ehto1) { if (ehto2) { lause 1;... lause n; } } else { lause 1;... lause m; } 15.3

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu

Kompositio. Mikä komposition on? Kompositio vs. yhteyssuhde Kompositio Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma

11. Javan valintarakenteet 11.1

Ohjelmointi 1 Taulukot ja merkkijonot

9. Periytyminen Javassa 9.1

Python-ohjelmointi Harjoitus 2

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo

Taulukoiden käsittely Javalla

1. Olio-ohjelmointi 1.1

JAVA-OHJELMOINNIN PERUSTEET. Sisältö 1. JAVA OHJELMOINTI LÄHTEITÄ HARJOITUKSET MUUTAMA MALLIRATKAISU...

Sisällys. 9. Periytyminen Javassa. Periytymismekanismi Java-kielessä. Periytymismekanismi Java-kielessä

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op. Tietorakenneluokkia 2: HashMap, TreeMap

Vertailulauseet. Ehtolausekkeet. Vertailulauseet. Vertailulauseet. if-lauseke. if-lauseke. Javan perusteet 2004

5. HelloWorld-ohjelma 5.1

7. Oliot ja viitteet 7.1

Sisällys. Metodien kuormittaminen. Luokkametodit ja -attribuutit. Rakentajat. Metodien ja muun luokan sisällön järjestäminen. 6.2

1. Kun käyttäjä antaa nollan, niin ei tulosteta enää tuloa 2. Hyväksy käyttäjältä luku vain joltain tietyltä väliltä (esim tai )

Ohjelmoinnin jatkokurssi, kurssikoe

Luokan sisällä on lista

Javan perusteita. Janne Käki

KOHDELUOKAN MÄÄRITTELY

Tietotyypit ja lausekkeet. Lewis & Loftus & Jukka Juslin 1

Transkriptio:

Ohjelmointitaito (ict1td002, 12 op) Kevät 2008 Raine Kauppinen raine.kauppinen@haaga-helia.fi 1. Java-ohjelmoinnin alkeita Tietokoneohjelma Java-kieli ja Eclipse-ympäristö Java-ohjelma ja ohjelmaluokka (sovellusluokka) Tiedon tulostaminen Laskutoimitukset Muuttujat ja niiden alustaminen Tietotyypit 2 Tietokoneohjelma Tietokoneohjelma on kokoelma toimintaohjeita (käskyjä, lauseita), joiden avulla tietokone saadaan suorittamaan toimenpidesarja, jonka avulla saadaan haluttu lopputulos, esimerkiksi ratkaisu johonkin ongelmaan. Yksinkertainen ohjelma voi esimerkiksi tulostaa tekstiä näytölle tai suorittaa laskutoimituksia ja tulostaa näiden tulokset näytölle. Monimutkainen ohjelma voi esimerkiksi laskea seuraavan viikon sääennusteen tai satelliitin lentoradan. 3 1

Java-kieli ja Eclipse-ympäristö Tietokoneohjelmat toteutetaan jollakin ohjelmointikielellä, tällä jaksolla Java-kielellä. Muita ohjelmointikieliä ovat esimerkiksi C, C++, C# ja Pascal. Eri ohjelmointikielillä on erilainen syntaksi, eli niiden käskyt, lauseet ja rakenteet kirjoitetaan eri tavalla. Ohjelmointia varten tarvitaan ohjelmointiympäristö, joita on myös erilaisia. Tällä jaksolla käytetään Eclipse-ympäristöä. 4 Java-ohjelma ja ohjelmaluokka (1/2) Ensimmäinen Java-ohjelmamme on seuraava: package osio1.vko1; /** * Ohjelma, joka tervehtii käyttäjää. * @author Raine Kauppinen */ public class Hei { public void aja() { System.out.println("Hei!"); public static void main(string[] args) { Hei olio = new Hei(); olio.aja(); 5 Java-ohjelma ja ohjelmaluokka (2/2) Edellä olevassa ohjelmakoodissa on paljon asioita, joita ei vielä tarvitse ymmärtää, edellä olevaa koodia voi käyttää esimerkkinä ensimmäisiä ohjelmia kirjoittaessa. Java-kielessä kaikki ohjelmat kirjoitetaan luokkiin (public class Hei { ) ja luokat tallennetaan luokan nimisiin tiedostoihin.java päätteellä lisättynä (Hei.java). Luokissa on metodeita (public void aja() { ja public static void main(string[] args) { ), mutta näistä ei tarvitse vielä tietää sen enempää niihin palataan. 6 2

Tiedon tulostaminen (1/3) Tässä vaiheessa meitä kiinnostaa tuo (metodin) public void aja() rivin jälkeinen, kaarisulkujen sisällä oleva osa, jossa edellä on yksi rivi: System.out.println("Hei!"); Kyseessä on Java-kielen tulostuslause, jolla ohjelma saadaan tulostamaan näytölle. Myöhemmin opitaan, mitä System.out.println-osa tarkoittaa, mutta tässä vaiheessa on hyvä huomata, että lauseen päättää puolipiste ja tulostettava merkkijono tulee sulkujen sisään lainausmerkeissä. 7 Tiedon tulostaminen (2/3) Muutetaan (metodin) public void aja() rivin jälkeistä, kaarisulkujen sisällä olevaa osaa: System.out.println("Hän sanoi "); // println tulostaa System.out.println("Hei!"); // rivinvaihdon System.out.print-lause tulostaa tekstin ilman rivinvaihtoa, yllä tulostettiin rivinvaihtokin. Huomaa, että // rivin lopussa aloittaa kommentin. 8 Tiedon tulostaminen (3/3) Tulostetaan näytölle vielä hieman lisää: System.out.println("Hän sanoi "); System.out.println("\"Hei!\""); // lainausmerkit: \" System.out.println("\n\n"); // rivinvaihto: \n System.out.println("\tNo hei!"); // tabulaattori: \t System.out.println("\\\\\\\\\\"); // takakeno: \\ Pitkän tulostuslauseen saa myös usealle riville (katenointi): System.out.println("Hän sanoi \"Hei!\"\n\n" + "\tno hei!\\\\\\\\\\"); 9 3

Laskutoimitukset (1/2) Javassa on käytettävissä mm. peruslaskutoimitukset: + yhteenlasku - vähennyslasku * tulo / osamäärä % jakojäännös Näiden tulostamisessa kannattaa olla tarkkana, koska lopputulos voi olla laskujärjestyksestä riippuen joko merkkijonojen katenointi (liittäminen) tai aritmeettinen operaatio. Epäselvissä tapauksissa kannattaa järjestys määrätä suluilla (). 10 Laskutoimitukset (2/2) Esimerkkejä laskutoimituksista ja tulostamisesta: // lause // tulostus System.out.println(2+3); // 5 System.out.println("Luku on "+2+3); // luku on 23 System.out.println("Luku on "+(2+3)); // luku on 5 System.out.println("Tulo 2*3="+2*3); // Tulo 2*3=6 System.out.println(9/3); // 3 System.out.println(5%2); // 1 Laskutoimituksia voi siis tehdä suoraan tulostuslauseessa (kunhan huolehtii järjestyksestä). 11 Muuttujat ja niiden alustaminen (1/2) Muuttuja on ohjelmassa nimetty (esitelty) paikka (keskusmuistissa), johon ohjelman tarvitsema tieto tallennetaan ja josta se löytyy aina tarvittaessa. Muuttujan nimeä sanotaan tunnukseksi ja se tavataan Javassa kirjoittaa pienellä alkukirjaimella (esimerkiksi luokkien nimet taas kirjoitetaan isolla alkukirjaimella). Muuttujalle voidaan alustaa esittelyn yhteydessä alkuarvo. Muuttujan sisältämän tiedon voi esimerkiksi tulostaa ja käyttää laskutoimituksen osana. 12 4

Muuttujat ja niiden alustaminen (2/2) Esimerkkejä muuttujien käytöstä: int luku1 = 15; // kokonaislukumuuttujien esittelyt int luku2 = 3; // ja alkuarvojen asetukset System.out.println(luku1+luku2); // 18 System.out.println(luku1+1); // 16 System.out.println(luku2*luku2); // 9 System.out.println((luku1+(2+luku2))/100); // 0 Edellä käytettiin kokonaislukuja, minkä vuoksi viimeisen lauseen tulos pyöristyy nollaan. 13 Tietotyypit (1/2) Muuttujan esittely on joko muotoa tietotyyppi tunnus; // esittely ilman alustusta tai muotoa tietotyyppi tunnus = alkuarvo; // esittely ja alustus Kokonaisluvun tietotyyppi on int, muita tietotyyppejä ovat mm. double (desimaaliluku), boolean (totuusarvo), char (yksittäinen merkki), byte (pieni kokonaisluku; tavu), short (pienehkö kokonaisluku), long (iso kokonaisluku), float (pienempi desimaaluku) ja String (merkkijono). 14 Tietotyypit (2/2) Muuttujan alkuarvon on vastattava sen tietotyyppiä: int luku = 123; double dluku = 12.45; boolean totuusarvo = true; // Boolean on aina joko // true tai false. char merkki = a ; // Yksittäinen merkki on // yksittäisten hipsujen // sisällä, vrt. // merkkijono. String merkkijono = Tämä on merkkijono. String on muista mainituista poikkeava tietotyyppi, johon palataan jatkossa. 15 5