Avatar billede dennism Nybegynder
13. september 2006 - 09:13 Der er 7 kommentarer og
1 løsning

Java: Switch

Er der nogen der kan fortælle mig hvad problem er, med denne switch:

        switch (((String)comboBetType.getSelectedItem()).charAt(0)) {
            case "Vinder":
                labelHorse1.setVisible(true);
                textHorse1.setVisible(true);
                break;
            case "Plads":
                break;
            case "Trio":
                break;
            case "12":
                break;
        }

Jeg får bl.a. denne fejl af compileren:
/home/dennis/java/Horserace/src/MainFrame.java:36: incompatible types
found  : java.lang.String
required: char
            case "Vinder":

Jeg kan godt se, at det er en string jeg forsøger at teste - men hvorfor må jeg ikke det? Hvorfor forventer den at få et char?
Avatar billede sw_red_6 Nybegynder
13. september 2006 - 09:25 #1
kunne det have noget at gøre med du har det her charAt(0) sat på?
Avatar billede dennism Nybegynder
13. september 2006 - 09:29 #2
Nej, problemet må skyldes at en switch ikke kan teste en string?
Avatar billede erikjacobsen Ekspert
13. september 2006 - 09:36 #3
"The type of the Expression must be char, byte, short, int, Character, Byte, Short, Integer, or an enum type (§8.9), or a compile-time error occurs."
http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.11
Men heldigvis har vi så:
http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.9.2
Avatar billede dennism Nybegynder
13. september 2006 - 09:51 #4
Ok, så løsningen er simpelthen en if statement? :)
Avatar billede erikjacobsen Ekspert
13. september 2006 - 10:33 #5
Ja. Eller et andet programmeringssprog end Java - der er enkelte der tillader sådan en konstruktion. Måske i kommende Java-udgaver.
Avatar billede dennism Nybegynder
13. september 2006 - 10:49 #6
Tak. smider du lige et svar?
Avatar billede erikjacobsen Ekspert
13. september 2006 - 10:53 #7
Jeg samler slet ikke på point, tak.
Avatar billede dennism Nybegynder
13. september 2006 - 10:55 #8
.lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester