Mikähän tässä ohjelmassa on vikana?
import java.io.*;
public class Tulostus2
{
public static void main(String[] args)
{
String gender;
int ika;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
try
{
System.out.print("Oletko mies vai nainen (m/n)?");
String gender = in.readLine();
System.out.print("Anna ikäsi: ");
ika = Integer.parseInt(in.readLine());
switch(gender)
{
case m:
{
if(ika >= o && ika = 56 && = 0 && = 56 &&
apuva
5
506
Vastaukset
- Nimimerkki
Ihan kuin mulla olis ollut joskus ekalla Java-kurssilla sama tehtävä... Vai onko joku muu kysynyt tuosta tehtävästä aiemminkin?
Kysyessä kannattais varmaan ensin vähän selittää mitä haluaisi ohjelman tekevän ja millainen ongelma sen kanssa on tullut. "Mikähän tässä ohjelmassa on vikana?" on aika kehno kysymys, harva jaksaa käydä kovin tarkkaan koodia läpi, ilman vinkkiä mitä pitäisi etsiä.
Tuosta vois kuitenkin olla apua;
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/switch.html
String ei ole alkeistyyppi vaan ihan olio.
Vinkkinä vois antaa semmoisenkin, että tulosta poikkeus näkyviin pelkän virheilmoituksen sijaan.
System.out.println("Ohjelmassa tapahtunut virhe: " e);- Piru_
"String ei ole alkeistyyppi vaan ihan olio. "
Niinhän se onkin. Ihan oikein sitä on silti tuossa käytetty.
Hyvä tapa ois kuitenkin alustaa ne muuttujat
String gender = null;
int ika = 0;
Nyt se gender-muuttuja on jo olemassa, niin ei kande luoda sisemmässä lohkossa uutta saman nimistä muuttujaa. Ei varmaan ole tarkoitus, että on kaksi saman nimistä eri lohkoissa voimassa olevaa muuttujaa
ei siis näin
"
String gender = "male";
if(blaablaa)
{
String gender = in.jotainjotain...
}
"
vaan
"
String gender = "male";
if(blaablaa)
{
gender = in.jotainjotain...
}
"
tossa ekassa iffissä on O-kirjain eikä nolla
if(ika >= o && ika - Nimimerkki
Piru_ kirjoitti:
"String ei ole alkeistyyppi vaan ihan olio. "
Niinhän se onkin. Ihan oikein sitä on silti tuossa käytetty.
Hyvä tapa ois kuitenkin alustaa ne muuttujat
String gender = null;
int ika = 0;
Nyt se gender-muuttuja on jo olemassa, niin ei kande luoda sisemmässä lohkossa uutta saman nimistä muuttujaa. Ei varmaan ole tarkoitus, että on kaksi saman nimistä eri lohkoissa voimassa olevaa muuttujaa
ei siis näin
"
String gender = "male";
if(blaablaa)
{
String gender = in.jotainjotain...
}
"
vaan
"
String gender = "male";
if(blaablaa)
{
gender = in.jotainjotain...
}
"
tossa ekassa iffissä on O-kirjain eikä nolla
if(ika >= o && ika"A switch works with the byte, short, char, and int primitive data types. It also works with enumerated types (discussed in Classes and Inheritance) and a few special classes that "wrap" certain primitive types: Character, Byte, Short, and Integer (discussed in Simple Data Objects )."
Eli String ei pelaa suoraan switchissä.
- I.Proqatlis
Tuossa yllä jo mainittujen lisäksi esiintyy kahdesti seuraava virheellinen iffi:
else if(ika >= 56 && - Mikä mättää
Paljon kiitoksia ja halaus viitseliäille auttajille. Onnistuin korjaamaan kaikki virheeni.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kuinka Riikka Purra on parantanut Suomen kansalaisen elämää?
Haastan kaikki perussuomalaisten kannattajat kertomaan konkreettisia esimerkkejä kuinka Riikka Purran harjoittama politi943979Iso poliisioperaatio Lapualla
Paikalla oli silminnäkijän mukaan myös kolme ambulanssia. https://www.is.fi/kotimaa/art-2000011924650.html Onko virpo693807Riikan antisakset leikkaavat bensan hintaa ylöspäin
Sannan aikoina bensaa sai 1,3 euron litrahinnalla ja Riikka leikkasi sen euron ylemmäksi reiluun 2 euroon. Joko on saks442235Sukupuolineutraalit liikennemerkit yksi persujen älynväläys
Samassa rytäkässä kaikki syrjäseutujen bussipysäkkien liikennemerkitkin vaihdettiin, vaikkei bussia ole liikennöinyt enä562204- 582094
- 521766
- 271439
Kehu kaivattuasi
Mikä hänessä on parasta? Jos osaat kertoa muuta kuin ulkonäköön liittyvää, niin ansaitset mitalin.1101218Vuoksesi kaiken
Tekisin vuoksesi kaiken. Enemmänkin. Kunpa tietäisi ja hyväksyisit sen. Ymmärtäisit, en voi elää ilman sinua. En halua1151183- 601119