You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: data/osa-1/2-tulostaminen-ja-lukeminen.md
+83-83
Original file line number
Diff line number
Diff line change
@@ -318,7 +318,7 @@ public class Ohjelma {
318
318
publicstaticvoidmain(String[] args) {
319
319
// Tänne voit kirjoittaa ohjelmakoodia. Ohjelmasi voit ajaa
320
320
// valitsemalla menusta Run->Run File tai painamalla Shift+F6
321
-
321
+
322
322
}
323
323
```
324
324
@@ -389,14 +389,14 @@ Merkkijonoliteraalin voi asettaa myös merkkijonomuotoisen muuttujan arvoksi. Mu
389
389
Merkkijonomuotoinen muuttuja nimeltä `viesti`, jonka arvona on merkkijono "Hei maailma!", luodaan seuraavasti.
390
390
391
391
```java
392
-
String viesti = "Hei maailma!";
392
+
String viesti = "Hei maailma!";
393
393
```
394
394
395
395
Muuttujan luominen luo ohjelman käyttöön paikan, jonka sisältöön voi myöhemmin viitata. Viittaaminen tapahtuu muuttujan nimen avulla. Esimerkiksi merkkijonomuuttujan luominen ja tulostaminen tapahtuu seuraavalla tavalla.
396
396
397
397
```java
398
-
String viesti ="Hei maailma!";
399
-
System.out.println(viesti);
398
+
String viesti ="Hei maailma!";
399
+
System.out.println(viesti);
400
400
```
401
401
402
402
<sample-output>
@@ -408,8 +408,8 @@ Hei maailma!
408
408
Mikäli ohjelmassa olisi hipsut merkkijonomuuttujan `viesti` nimen ympärillä, tulostaisi ohjelma tekstin "viesti" muuttujan `viesti` arvon eli tekstin "Hei maailma!" sijaan.
409
409
410
410
```java
411
-
String viesti ="Hei maailma!";
412
-
System.out.println("viesti");
411
+
String viesti ="Hei maailma!";
412
+
System.out.println("viesti");
413
413
```
414
414
415
415
<sample-output>
@@ -423,14 +423,14 @@ viesti
423
423
Tehtäväpohjassa on seuraavanlainen ohjelmarunko:
424
424
425
425
```java
426
-
publicclassPassiJaHammasharja {
426
+
publicclassPassiJaHammasharja {
427
427
428
-
publicstaticvoidmain(String[] args) {
429
-
String viesti ="Passi ja hammaslanka";
428
+
publicstaticvoidmain(String[] args) {
429
+
String viesti ="Passi ja hammaslanka";
430
430
431
-
System.out.println(viesti);
432
-
}
431
+
System.out.println(viesti);
433
432
}
433
+
}
434
434
```
435
435
436
436
Ohjelman suorittaminen tulostaa seuraavan tekstin.
@@ -455,25 +455,25 @@ Passi ja hammasharja
455
455
Tulostettavan merkkijonon voi koostaa useammista merkkijonoista `+`-merkin avulla. Esimerkiksi alla oleva ohjelma tulostaa viestin "Hei maailma!" yhdelle riville.
456
456
457
457
```java
458
-
publicclassOhjelma {
458
+
publicclassOhjelma {
459
459
460
-
publicstaticvoidmain(String[] args) {
461
-
System.out.println("Hei "+"maailma!");
462
-
}
463
-
}
460
+
publicstaticvoidmain(String[] args) {
461
+
System.out.println("Hei "+"maailma!");
462
+
}
463
+
}
464
464
```
465
465
466
466
Edellistä esimerkkiä noudattaen myös merkkijonomuuttujan arvon ja merkkijonoliteraalin arvo voidaan yhdistää.
467
467
468
468
```java
469
-
publicclassOhjelma {
469
+
publicclassOhjelma {
470
470
471
-
publicstaticvoidmain(String[] args) {
472
-
String viesti ="Hei maailma!";
471
+
publicstaticvoidmain(String[] args) {
472
+
String viesti ="Hei maailma!";
473
473
474
-
System.out.println(viesti +"\n... ja maailmankaikkeus!");
475
-
}
476
-
}
474
+
System.out.println(viesti +"\n... ja maailmankaikkeus!");
475
+
}
476
+
}
477
477
```
478
478
479
479
<sample-output>
@@ -485,15 +485,15 @@ Hei maailma!
485
485
Sama onnistuu myös useammalla osalla.
486
486
487
487
```java
488
-
publicclassOhjelma {
488
+
publicclassOhjelma {
489
489
490
-
publicstaticvoidmain(String[] args) {
491
-
String alku ="My name is ";
492
-
String loppu =", James Bond";
490
+
publicstaticvoidmain(String[] args) {
491
+
String alku ="My name is ";
492
+
String loppu =", James Bond";
493
493
494
-
System.out.println(alku +"Bond"+ loppu);
495
-
}
496
-
}
494
+
System.out.println(alku +"Bond"+ loppu);
495
+
}
496
+
}
497
497
```
498
498
499
499
<sample-output>
@@ -528,13 +528,13 @@ kolme
528
528
Tehtäväpohjassa on seuraavanlainen ohjelma.
529
529
530
530
```java
531
-
publicclassHeiAdaLovelace {
531
+
publicclassHeiAdaLovelace {
532
532
533
-
publicstaticvoidmain(String[] args) {
534
-
String nimi ="Ada Lovelace";
533
+
publicstaticvoidmain(String[] args) {
534
+
String nimi ="Ada Lovelace";
535
535
536
-
}
537
536
}
537
+
}
538
538
```
539
539
540
540
Muokkaa ohjelmaa siten, että ohjelmassa tulostetaan muuttujan `nimi` sisältö, ja että ohjelman tulostus on kokonaisuudessaan muotoa:
Tutustutaan syötteen lukemiseen käyttäjältä.Syötteen lukemiseen käytetään Javan valmista `Scanner`-apuvälinettä.Apuväline tuodaan käyttöön lisäämällä komento `import java.util.Scanner;` ennen pääohjelmarungon aloitusta (`publicclass` ...), ja se luodaan komennolla `Scanner lukija = new Scanner(System.in);`.Tarkemmin ottaen tässä luodaan _lukija_-niminen muuttuja, jota voidaan jatkossa käyttää käyttäjän kirjoittaman tekstin lukemiseen.
555
555
556
556
```java
557
-
import java.util.Scanner;
557
+
import java.util.Scanner;
558
558
559
-
publicclassOhjelma {
559
+
publicclassOhjelma {
560
560
561
-
publicstaticvoidmain(String[] args) {
562
-
Scanner lukija =newScanner(System.in);
561
+
publicstaticvoidmain(String[] args) {
562
+
Scanner lukija =newScanner(System.in);
563
563
564
-
// ohjelmakoodi
565
-
}
566
-
}
564
+
// ohjelmakoodi
565
+
}
566
+
}
567
567
```
568
568
569
569
Älä hätäile vaikka pääohjelmarunko saattaa näyttää vaikeaselkoiselta!Jatkamme yhä ohjelmointia kommentilla _ohjelmakoodi_ merkittyyn kohtaan.
570
570
571
571
Merkkijonon lukeminen käyttäjältä onnistuu `lukija`-muuttujaan liittyvällä komennolla `nextLine()`. Mikäli käyttäjän syöttämä teksti halutaan tallentaa, tulee sitä varten esitellä merkkijonomuuttuja. Alla on esitelty ohjelma, joka kysyy käyttäjältä syötettä, lukee käyttäjän syöttämän merkkijonon, ja lopulta tulostaa käyttäjän syöttämän merkkijonon.
572
572
573
573
```java
574
-
// Tuodaan lukemiseen käytettävä Scanner-apuväline käyttöön
575
-
import java.util.Scanner;
574
+
// Tuodaan lukemiseen käytettävä Scanner-apuväline käyttöön
575
+
import java.util.Scanner;
576
576
577
-
publicclassOhjelma {
577
+
publicclassOhjelma {
578
578
579
-
publicstaticvoidmain(String[] args) {
580
-
// Luodaan lukemiseen käytettävä apuväline, jonka nimeksi tulee lukija
581
-
Scanner lukija =newScanner(System.in);
579
+
publicstaticvoidmain(String[] args) {
580
+
// Luodaan lukemiseen käytettävä apuväline, jonka nimeksi tulee lukija
// Luetaan käyttäjän syöttämä merkkijono ja asetetaan se muuttujan viesti arvoksi
587
-
String viesti = lukija.nextLine();
586
+
// Luetaan käyttäjän syöttämä merkkijono ja asetetaan se muuttujan viesti arvoksi
587
+
String viesti = lukija.nextLine();
588
588
589
-
// Tulostetaan muuttujan viesti sisältö
590
-
System.out.println(viesti);
591
-
}
592
-
}
589
+
// Tulostetaan muuttujan viesti sisältö
590
+
System.out.println(viesti);
591
+
}
592
+
}
593
593
```
594
594
595
595
Jatkossa tulostusesimerkkeihin merkitään käyttäjän syöttämä syöte punaisella värillä.Mikäli käyttäjä syöttäisi ohjelmaan tekstin "Hei maailma", olisi ohjelman suoritus seuraavanlainen.
@@ -605,20 +605,20 @@ Hei maailma
605
605
Alla sama esimerkki, mutta siten, että käyttäjän syöttämä merkkijono tulostetaan tekstin "Viestisi oli " jälkeen.
606
606
607
607
```java
608
-
import java.util.Scanner;
608
+
import java.util.Scanner;
609
609
610
-
publicclassOhjelma {
610
+
publicclassOhjelma {
611
611
612
-
publicstaticvoidmain(String[] args) {
613
-
Scanner lukija =newScanner(System.in);
612
+
publicstaticvoidmain(String[] args) {
613
+
Scanner lukija =newScanner(System.in);
614
614
615
-
System.out.println("Syötä viesti: ");
615
+
System.out.println("Syötä viesti: ");
616
616
617
-
String viesti = lukija.nextLine();
617
+
String viesti = lukija.nextLine();
618
618
619
-
System.out.println("Viestisi oli "+ viesti);
620
-
}
621
-
}
619
+
System.out.println("Viestisi oli "+ viesti);
620
+
}
621
+
}
622
622
```
623
623
624
624
<sample-output>
@@ -638,17 +638,17 @@ Kirjoita ohjelma, joka pyytää käyttäjää kirjoittamaan merkkijonon. Kun kä
638
638
Tehtäväpohjan mukana tulee runko, joka sisältää Scanner-apuvälineen luomisen.
639
639
640
640
```java
641
-
import java.util.Scanner;
641
+
import java.util.Scanner;
642
642
643
-
publicclassViesti {
643
+
publicclassViesti {
644
644
645
-
publicstaticvoidmain(String[] args) {
646
-
Scanner lukija =newScanner(System.in);
645
+
publicstaticvoidmain(String[] args) {
646
+
Scanner lukija =newScanner(System.in);
647
647
648
-
System.out.println("Kirjoita merkkijono!");
649
-
// toteuta ohjelma tänne
650
-
}
648
+
System.out.println("Kirjoita merkkijono!");
649
+
// toteuta ohjelma tänne
651
650
}
651
+
}
652
652
```
653
653
654
654
Tulostusesimerkki kun käyttäjä syöttää merkkijonon "Heippa".
@@ -680,17 +680,17 @@ Kirjoita ohjelma, joka pyytää käyttäjää kirjoittamaan merkkijonon. Kun kä
680
680
Tehtäväpohjan mukana tulee runko, joka sisältää Scanner-apuvälineen luomisen.
681
681
682
682
```java
683
-
import java.util.Scanner;
683
+
import java.util.Scanner;
684
684
685
-
publicclassViestiKolmesti {
685
+
publicclassViestiKolmesti {
686
686
687
-
publicstaticvoidmain(String[] args) {
688
-
Scanner lukija =newScanner(System.in);
687
+
publicstaticvoidmain(String[] args) {
688
+
Scanner lukija =newScanner(System.in);
689
689
690
-
System.out.println("Kirjoita merkkijono!");
691
-
// toteuta ohjelma tänne
692
-
}
690
+
System.out.println("Kirjoita merkkijono!");
691
+
// toteuta ohjelma tänne
693
692
}
693
+
}
694
694
```
695
695
696
696
Tulostusesimerkki kun käyttäjä syöttää merkkijonon "Heippa".
@@ -726,16 +726,16 @@ Kirjoita ohjelma, joka kysyy käyttäjältä nimeä käyttäen tekstiä "Mikä o
726
726
Tehtäväpohjan mukana tulee runko, joka sisältää Scanner-apuvälineen luomisen.
727
727
728
728
```java
729
-
import java.util.Scanner;
729
+
import java.util.Scanner;
730
730
731
-
publicclassNimi {
731
+
publicclassNimi {
732
732
733
-
publicstaticvoidmain(String[] args) {
734
-
Scanner lukija =newScanner(System.in);
733
+
publicstaticvoidmain(String[] args) {
734
+
Scanner lukija =newScanner(System.in);
735
735
736
-
// toteuta ohjelma tänne
737
-
}
736
+
// toteuta ohjelma tänne
738
737
}
738
+
}
739
739
```
740
740
741
741
Tulostusesimerkki kun käyttäjä syöttää nimeksi Ada.
0 commit comments