Witam. To mój pierwszy post na forum, więc przy okazji chciałem się przywitać :)
A teraz do rzeczy. Przerabiam kurs Javy na pewnej stronie internetowej i natrafiłem na problem. Jestem przy temacie instrukcji sterujących (if, else if, else i switch). Na końcu lekcji jest ćwiczenie do samodzielnego wykonania. Brzmi ono tak:
"Napisz program, który pobierze od użytkownika imię i przechowa je w zmiennej. Następnie stwórz kilka warunków z różnymi imionami. Jeśli któreś z imion będzie pasowało wyświetl "Cześć jakieś_imię", gdy program nie znajdzie imienia wyświetl "Przykro mi, ale Cię nie znam"."
Postanowiłem skorzystać z instrukcji switch, ponieważ czytałem, że od wersji Javy 1.7 switch umożliwia operacje na stringach. Niżej podaję kod, który napisałem:
import java.util.Scanner;
public class Klasa1 {
public static void main(String[] args) {
String imie;
Scanner odczyt = new Scanner(System.in);
System.out.println("Podaj swoje imie");
imie = odczyt.nextLine();
switch(imie){
case Michał:
System.out.println("Cześć Michał");
break;
case Grażyna:
System.out.println("Cześć Grażyna");
break;
case Grzegorz:
System.out.println("Cześć Grzegorz");
break;
default:
System.out.println("Przykro mi, ale Cię nie znam");
}
}
}
Jednak Eclipse Indigo przy każdym imieniu wyświetla mi błąd "(imie) cannot be resolved to a variable". Moja wersja Javy jdk to 1.8. System operacyjny to Windows 7 32-bit. Dodałem zmienną środowiskową katalogu bin do ścieżki path. Wszystkie poprzednie kody kompilowały się bez problemu. Kiedy skopiowałem kod do notatnika i próbowałem skompilować kod w wierszu poleceń - też wywaliło błąd. Czy problem tkwi w kodzie czy w konfiguracji jdk lub Eclipse?