Skocz do zawartości

Zadanie z pracy domowej.


engor

Recommended Posts

Witam !

Mam problem z zadaniem jestem początkujący i korzystam z korepetytora który zadał mi takie oto zadanie domowe :

jest klasa Zwierzak zmienne prywatne: kolorSierci, iloscLap, nazwa, gatunek

//setters:
kolorSierci ma byc BLACK lub GREY jezeli nie to wypisz komunkat ze podano zly kolor siersci i przypisz BLACK do zmiennej prywatnej

iloscLap, nazwa dowolne

gatunek ma sie zaczynac od duzej litery (klasa Character)

getters

toString

Kod który napisałem :

package pracaDomowa;

import java.util.Scanner;

public class zwierzak

{

private String kolorSiersci= "grey";

private int iloscLap;

private String nazwa;

private String gatunek;

Scanner x = new Scanner(System.in);

public zwierzak()

{

System.out.println("Podaj kolor siersci");

String kS = x.nextLine();

if (kS!= "grey" || kS!="black")

{

System.out.println("Podany kolor siersci musi być koloru grey lub black !");

}

else

{

System.out.println("dobrze");

}

System.out.println("Podaj nazwe zwierzaka");

String nazwa = x.nextLine();

System.out.println("Podaj gatunek zwierzaka");

String gatunek = x.nextLine();

System.out.println("Podaj ilość łap"); //jak było na drugim miejscu po starcie i dojściu do nZ i gZ pojawiało się razem. Why ?

int iloscLap = x.nextInt();

if (iloscLap < 0 )

{

System.out.println("Zwierze musi posiadać jakieś łapki!");

}

}

public void setkolorSiersci(String kS)

{

kolorSiersci = kS;

}

public String getkolorSiersci()

{

return kolorSiersci;

}

public void setiloscLap(int iL)

{

iloscLap = iL;

}

public int getiloscLap()

{

return iloscLap;

}

public void setnazwa(String n)

{

nazwa = n;

}

public String getnazwa()

{

return nazwa;

}

public void setgatunek(String g)

{

gatunek = g;

}

public String getgatunek()

{

return gatunek;

}

@Override

public String toString()

{

return getkolorSiersci()+" "+getiloscLap()+" "+getnazwa()+" "+getgatunek();

}

}

Bardzo proszę o pomoc wytłumaczenie będe bardzo ale to bardzo wdzięczny. Pozdrawiam ! :)

Link do komentarza
Udostępnij na innych stronach

  • 5 months later...

Warunek masz źle powinno być

if (!kS.equals("grey") || !kS.equals("black"))

bo != jest dedykowane dla liczb :P

Jak masz nextInt() a później nextLine() tyo problem polega na tym, ze nextInt czyta tylko liczbę i nie przechwytywał klawisza enter. 

Rozwiązanie Twojego problemu:
 

System.out.println("Podaj nazwe zwierzaka");

String nazwa = x.nextLine();
        
System.out.println("Podaj ilość łap"); //jak było na drugim miejscu po starcie i dojściu do nZ i gZ pojawiało się razem. Why ?

int iloscLap = x.nextInt();
x.nextLine(); // dodatkoa linia by przechwytywała klawisz enter

System.out.println("Podaj gatunek zwierzaka");

String gatunek = x.nextLine();

 

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...