Miten kysytään käyttäjältä tietoa

miten kysdytää

Eli miten javassa kysytään käyttäjältä tietoa niinkuin basicissa inputbox ja C/C :ssa cin..?

10

773

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Lätkämaila

      --- ESIMERKKI ALKAA ---

      import java.util.Scanner;

      public class Esimerkki2 {

         public static void main(String[] arg) {
            Scanner sisään = new Scanner(System.in);

            System.out.print("Anna nimesi: ");
            
            String nimi = sisään.nextLine();
            
            System.out.print("Anna ikäsi: ");
            
            int ikä = sisään.nextInt();
            
            System.out.println("Hei " nimi "! Olet " ikä " vuotias.");
         }
      }

      --- ESIMERKKI LOPPUU ---

      • kumpi on oikea

        Löysin bufferedreader homman mikä on melkein samantapainen mutta siinä on try ja catch error pakko. Kumpi on sitten se oikea tapa?


      • Lätkämaila
        kumpi on oikea kirjoitti:

        Löysin bufferedreader homman mikä on melkein samantapainen mutta siinä on try ja catch error pakko. Kumpi on sitten se oikea tapa?

        Helppokäyttöinen Scanner luokka tuli mukaan vasta Java 1.5:een (ja tämän takia useista esimerkeistä ja oppikirjoista ei löydy siitä mitään). Jos teet ohjelmia, joiden pitäisi toimia pienemmillä Java versioilla niin, silloin joudut käyttämään(/tyytymään) BufferedReader, Interger.parseInt(), yms. erillisratkaisuihin.

        Valinta on siis vapaa. En kuitenkaan näe syytä miksi kielten uusia ominaisuuksia (jotka on tarkoitettu helpottamaan ohjelmointia) ei kannattaisi alkaa heti käyttämään ja opettelemaan, jos ei ole tarve pysyä vanhoissa versioissa.


      • miten scannerilla

        Miten tolla skannerilla saa luettua double muuttujaan? jos laitan double nimi = sisään.nextdouble niin ei toimi


      • Lätkämaila
        miten scannerilla kirjoitti:

        Miten tolla skannerilla saa luettua double muuttujaan? jos laitan double nimi = sisään.nextdouble niin ei toimi

        Olethan myös huomioinut sen, että ollaan suomessa, eli ei 10.1 vaan 10,1 ;)


      • heh joooh :p
        Lätkämaila kirjoitti:

        Olethan myös huomioinut sen, että ollaan suomessa, eli ei 10.1 vaan 10,1 ;)

        Niin tietenkin, yllä tässä javassa saa olla tarkkana noitten kanssa. Nyt kun viel muistais ulkoa ton skannauksen hommat :)


      • LepLep
        heh joooh :p kirjoitti:

        Niin tietenkin, yllä tässä javassa saa olla tarkkana noitten kanssa. Nyt kun viel muistais ulkoa ton skannauksen hommat :)

        Suosittelisin ehdottomasti jonkin viisaan sovelluskehitysvälineen käyttöä, jolloin kirjoitusvirheet huomataan heti.

        Suosittelen Ecplipseä: http://www.eclipse.org/downloads/

        Ecplise on ilmainen tuote (Open source).


    • toisesta ajattelusta

      eli seuraavalla koodilla saan tehtyä 4 luvun keskiarvo:
      import java.util.Scanner;


      public class keskiarvo2 {


      public static void main (String[] args) {



      Scanner lue = new Scanner(System.in);

      System.out.print("Anna luku1: ");

      double num1 = lue.nextDouble();


      System.out.print("Anna luku2: ");

      double num2 = lue.nextDouble();

      System.out.print("Anna luku3: ");

      double num3 = lue.nextDouble();

      System.out.print("Anna luku4: ");

      double num4 = lue.nextDouble();





         

         System.out.println((num1 num2 num3 num4)/4);


      }



      }


      ----loppu

      onko järkevää noin vai mitä etuja se silmukka antaisi tähän? onko tämä huonoa tapaa mitä nyt tein

      • Lätkämaila

        Silmukalla homman voisi tehdä seuraavasti:

        --- ALKAA ---

        import java.util.Scanner;

        public class Keskiarvo2 {
           
           public static final int ARVOJA = 4;
           
           public static void main (String[] args) {
              Scanner lue = new Scanner(System.in);
              double summa = 0;
              
              for (int i = 1; i


      • Lätkämaila
        Lätkämaila kirjoitti:

        Silmukalla homman voisi tehdä seuraavasti:

        --- ALKAA ---

        import java.util.Scanner;

        public class Keskiarvo2 {
           
           public static final int ARVOJA = 4;
           
           public static void main (String[] args) {
              Scanner lue = new Scanner(System.in);
              double summa = 0;
              
              for (int i = 1; i

        Meni sanat sekaisin, eli järkevämpi sanan tilalle piti tulla huonompi, tms. sana.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Vain vasemmistolaiset rakennemuutokset pelastavat Suomen

      Kansaa on ankeutettu viimeiset 30+ vuotta porvarillisella minäminä-talouspolitiikalla, jossa tavalliselta kansalta on ot
      Maailman menoa
      129
      3917
    2. Purra on kantanut vastuuta täyden kympin arvoisesti

      Luottoluokituksen lasku, ennätysvelat ja ennätystyöttömyys siitä muutamana esimerkkinä. Jatkakoon hän hyvin aloittamaans
      Maailman menoa
      14
      3371
    3. Haluaisin rakastaa sinua

      Ja olla sinulle se oikea... Rakastan sinua 💗💗💗
      Ikävä
      19
      3315
    4. onko kaivattusi

      vaarallinen? :D
      Ikävä
      79
      3257
    5. Persut huutaa taas: "kato! muslimi!"

      Persut on lyhyessä ajassa ajaneet läpi kaksi työntekijöiden oikeuksien heikennystä, joita se on aiemmin vastustanut. Pe
      Maailman menoa
      57
      3214
    6. Menen nyt koisimaan

      Ja en ehkä palaa tänne. Asia on nyt loppuunkäsitelty ja totuus tuli ilmi
      Ikävä
      29
      2885
    7. Tiedätkö mihin

      Ominaisuuksiin rakastuin sinussa?
      Ikävä
      47
      2697
    8. Olisiko sinulla

      Jonossa vaihtoehtoja, ehkä
      Ikävä
      54
      2617
    9. Pieni galluppi

      Mitäs lahjaa odotat joulupukilta.
      Ikävä
      68
      2421
    10. Mitä tuntemuksia

      Rakkaasi ääni herättää?
      Ikävä
      19
      2357
    Aihe