Hei,
Tälläinen kysymys että miten voi tarkistaa sisältääkö jokin kirjain tai lause javassa.
Esim:
Ensin pyydät anna nimi tai merkin, sitten kun tarkistat nimen niin haluat vaikkapa tarkistaa onko se just tietty nimi kuten matti tai sisätääkö ohjelma @- merkkiä ja sitten kun se on tarkistanut se sanooo että sisältää tai että ei sisällä.
ps. jos voisitte kirjoitta malli koodin tai kertoa jonkin sivun mistä voi oppia.
Kiitoksia etukäteen
Tälläinen kysymys että miten voi tarkistaa sisältääkö jokin kirjain tai lause javassa.
Esim:
Ensin pyydät anna nimi tai merkin, sitten kun tarkistat nimen niin haluat vaikkapa tarkistaa onko se just tietty nimi kuten matti tai sisätääkö ohjelma @- merkkiä ja sitten kun se on tarkistanut se sanooo että sisältää tai että ei sisällä.
ps. jos voisitte kirjoitta malli koodin tai kertoa jonkin sivun mistä voi oppia.
Kiitoksia etukäteen
Vastaukset 5
Vanhimmat
String s = "annettu sana tai merkki";
if (s.indexOf("etsittävä sana") > -1){
System.out.println("löytyy");
}else{
System.out.println("ei löydy");
}
public class Osoitetarkastus1
{
public static void main(String args[])
{
String osoite;
int lkm;
int summa;
System.out.println("Anna sähköposti osoiteesi (exit lopettaa):");
osoite=Pyydä.merkkijono();
while(osoite!="exit")
{
osoite="@";
if (s.indexOf("@") > -1)
{
System.out.println("Osoitteesi on:" osoite);
}
else
{
System.out.println("Sähköposti osoitteesta puuttuu @-merkki. Anna kelvollinen osoite.");
}
}
}
}
Tässä se on kun lisäsin sinun antaman pienen osan siitä, ja se vieläkin valittaa. Pystytkö auttamaan vielä?
ensiksi ihmetyttää tuo while-ehto. Missään vaiheessa tuota osoite-muuttujaa ei aseteta "exit" joten tuo pyörisi ikuisesti silmukassa.
Toiseksi String-luokan muuttujien yhtäsuuruutta ei testata operaattorilla == vaan pitää käyttää .equals()-metodia.
System.out.println("Anna sähköposti osoiteesi (exit lopettaa):");
osoite=Pyydä.merkkijono();
if(osoite.equals("") || osoite == null)
{
System.out.println("Tyhjä osoite");
}
else
{
if(osoite.indexOf("@") >-1)
{
System.out.println("Osoitteesi on:" osoite);
}
else
{
System.out.println("Sähköposti osoitteesta puuttuu @-merkki. Anna kelvollinen osoite.");
}
}
tai sitten näin (taitaa olla jdk1.4.2 ja eteenpäin)
if(s.matches("etsittävä sana")
System.out.println("löytyy");
else
System.out.println("ei löydy");
if(s.matches("etsittävä sana"))
System.out.println("löytyy");
else
System.out.println("ei löydy");