Java ja tietyn tekstipätkän nosto

Niin olen aloitteleva java ohjelmoija..no haukkukaa vaan =) -mutta ongelmani olisi sellainen että jos haluan käyttäjän kirjoittavan jotakin ohjelmaani esim:
"minulla on pää kipeä" niin miten saisin esimerkiksi kerättyä ohjelmalla tietyn sanan tuolta eli vaikka "pää" ja sitten antaa vastaus käyttäjälle. -ja ohjelma antaisi vastauksen vaikka tyyliin "ota särkylääkettä" tottakai saisin aikaiseksi sellaisen ohjelman että jos käyttäjä kirjoittaa pelkästään "pää" niin ohjelma toimisi mutta olisi "tyhmä"

Eli kyse olisi pienestä "tohtori" ohjelmasta joka antaisi vastauksia käyttäjälle. -Voisiko joku kiltti ihminen antaa pienen koodin pätkän jota voisi jatkaa..tai edes puoliohjelmointi ratkaisuna.
-tämä antaisi minulle innokkuutta jatkaa ohjelmointia javan parissa sillä olen toivonut aina että voisin rakentaa tämän tyylisen ohjelman...kiitos. -ja anteeksi jos ette saaneet selvää =)
6303
Äänestä

Muut lukivat myös

Vastaukset 6

Vanhimmat

..on StringTokenizer. Kannattaa tutkiskella javan API Dokumentaatiota(löytyy Sunin sivuilta) sieltä löytyy kaikki tarvittava.

Äänestä
  • indexOf

    Äänestä

Sisennykset ei oikein näytä menevän kohdalleen
mutta tässä yksi simppeli esimerkki.


import java.awt.*;
import javax.swing.JOptionPane;

public class Testi{

String sanat[] = {"pää","korva","jalka","selkä","vatsa"};
   Frame frame = new Frame();
   int ind = -1;


   public Testi(){
      String vastaus = null;

      vastaus = JOptionPane.showInputDialog(frame,"Kerro vaivasi!","Mikä sulla on hätänä",JOptionPane.QUESTION_MESSAGE);

while(vastaus != null){
if(vastaus == "" || vastaus == null){
System.exit(0);
return;
            }
         for(int i = 0;i < sanat.length;i ){
            ind = tutkiMerkkijono(vastaus,sanat,i);
            naytaViesti(ind);
         }
         vastaus = JOptionPane.showInputDialog(frame,"Kerro vaivasi!","Mikä sulla on hätänä",JOptionPane.QUESTION_MESSAGE);
      }
   }



   public int tutkiMerkkijono(String merkkijono,String[]sanat,int index){
      int id = -1;


      if(merkkijono.indexOf(sanat[index]) != -1)
         id = index;

      return id;
   }


   public void naytaViesti(int viestiTyyppi){
      String laakarinVastaus = null;


      switch (viestiTyyppi){
         case 0:
            JOptionPane.showMessageDialog(frame,"Ota Buranaa.","Diagnoosi",2);
         break;

         case 1:
            JOptionPane.showMessageDialog(frame,"Pese ne korvasi.","Diagnoosi",2);
         break;

         case 2:
            JOptionPane.showMessageDialog(frame,"Mene hierojalle","Diagnoosi",2);
         break;

         case 3:
            JOptionPane.showMessageDialog(frame,"Mene kiropraktikolle","Diagnoosi",2);
         break;

         case 4:
            JOptionPane.showMessageDialog(frame,"Ota fernet branccaa","Diagnoosi",2);
         break;

      }


   }

   public static void main(String []args){
      new Testi();
   }

}

Äänestä
  • Kiitos hirveästi..tuota olen odottanut...-nyt taas jaksaa opiskella javaa ja pelkästään sun ansiota!!! -nyt vain enää lisää opiskelemaan ja muuntelemaan omaa muunnosta tuohon niin siitä tulee täydellinen... -kiitos vielä kerran, et uskokkaan kuinka paljon tämä merkitsee minulle! =)

    Äänestä

  • Fixer kirjoitti:

    Kiitos hirveästi..tuota olen odottanut...-nyt taas jaksaa opiskella javaa ja pelkästään sun ansiota!!! -nyt vain enää lisää opiskelemaan ja muuntelemaan omaa muunnosta tuohon niin siitä tulee täydellinen... -kiitos vielä kerran, et uskokkaan kuinka paljon tämä merkitsee minulle! =)

    mjoo

    Äänestä

  • Fixer kirjoitti:

    Kiitos hirveästi..tuota olen odottanut...-nyt taas jaksaa opiskella javaa ja pelkästään sun ansiota!!! -nyt vain enää lisää opiskelemaan ja muuntelemaan omaa muunnosta tuohon niin siitä tulee täydellinen... -kiitos vielä kerran, et uskokkaan kuinka paljon tämä merkitsee minulle! =)

    OK.Hyvä että kelpasi.

    Äänestä

Kommentoi aloitusta


Nyybie kirjoitti:

Niin olen aloitteleva java ohjelmoija..no haukkukaa vaan =) -mutta ongelmani olisi sellainen että jos haluan käyttäjän kirjoittavan jotakin ohjelmaani esim:
"minulla on pää kipeä" niin miten saisin esimerkiksi kerättyä ohjelmalla tietyn sanan tuolta eli vaikka "pää" ja sitten antaa vastaus käyttäjälle. -ja ohjelma antaisi vastauksen vaikka tyyliin "ota särkylääkettä" tottakai saisin aikaiseksi sellaisen ohjelman että jos käyttäjä kirjoittaa pelkästään "pää" niin ohjelma toimisi mutta olisi "tyhmä"

Eli kyse olisi pienestä "tohtori" ohjelmasta joka antaisi vastauksia käyttäjälle. -Voisiko joku kiltti ihminen antaa pienen koodin pätkän jota voisi jatkaa..tai edes puoliohjelmointi ratkaisuna.
-tämä antaisi minulle innokkuutta jatkaa ohjelmointia javan parissa sillä olen toivonut aina että voisin rakentaa tämän tyylisen ohjelman...kiitos. -ja anteeksi jos ette saaneet selvää =)

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu