Avatar billede dennish Nybegynder
01. november 2009 - 22:58 Der er 7 kommentarer og
1 løsning

Få fat i navn på boolean runtime

Hej jeg har følgende metode:

public SessionModel(boolean personName) {

}

Jeg vil egentlige gerne have fat i navnet på "klassen" boolean dvs personName. Jeg kan selvfølgelig sende en string med som hjælpeparameter

public SessionModel(boolean personName,String booleanName) {

}

Men kan man ikke runtime få navnet på en boolean ?. Har kigget lidt på reflection men er ikke lige sikker om det kan hjælp mig ??
Avatar billede arne_v Ekspert
01. november 2009 - 23:14 #1
Navnet "personName" i parameter listen forsvinder ved compilering d.v.s. at den er ikke i .class filen, så den kan ikke findes.
Avatar billede arne_v Ekspert
01. november 2009 - 23:15 #2
Og navnet på det faktisk argument i kaldet kan heller ikke findes.
Avatar billede arne_v Ekspert
01. november 2009 - 23:16 #3
Men hvis du prøver og forklarer hvad du skal bruge det til, så kan vi måske finde en alternativ løsning.
Avatar billede dennish Nybegynder
01. november 2009 - 23:33 #4
Sagen er bare den, at jeg metoden modtager forskellige boolske værdier såsom boolean personName, boolean personCity osv.
Jeg skal så i metoden agerer om det er personName eller personCity

Jeg ender nok med noget a la:
public SessionModel(boolean personName,String booleanName) {
if(booleanName.equals("personName")) {
....
}
Avatar billede arne_v Ekspert
01. november 2009 - 23:47 #5
Det lyder som et noget suspekt design !

Umiddelbart er mit bedste bud at bruge en enum:

public SessionModel(boolean val, PersonType typ) {
    switch(typ) {
        case Name:
            ...
            break;
        case City:
            ...
            break;
    }
}
Avatar billede arne_v Ekspert
04. december 2009 - 20:48 #6
kommet videre?
Avatar billede dennish Nybegynder
14. december 2009 - 16:15 #7
Arne>> Hej Arne. Sorry for det sene svar. Jeg kom til den konklusion, at jeg skulle redesigne mit design.
Avatar billede arne_v Ekspert
15. december 2009 - 03:48 #8
Så vil jeg smide et svar.
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