Avatar billede dennish Nybegynder
06. oktober 2003 - 18:03 Der er 8 kommentarer og
3 løsninger

if og this problem

Hej har følgende kode:

    public int res1;
    public int res2;
    public int res3;
    public int res4;
    public boolean coordinator = false; 
   

public void startElection()
    {   
   
        P2 res2 = new P2();
        P3 res3 = new P3();
        this.res2 = res2.startElection();
        this.res3 = res3.startElection();
       
        // virker ikke    
        if(this.res1 > this.res2 && this.res3)
        {
            setCoordinator(true);
        }
               
       
    }
   
Mit spørgsmål er følgende, hvordan får jeg min if .. til at virke og så også lige hvordan undgår jeg at bruge this hele tiden.
Avatar billede frosig Nybegynder
06. oktober 2003 - 18:12 #1
Du skal bruge this, hvis en global variabel variabel hedder det samme som den i metoden, så du kan bare navngive dine variable anderledes...

If-sætningen kommer til at hedde

if(this.res1 > this.res2 && this.res1 > this.res3)
Avatar billede repsak Nybegynder
06. oktober 2003 - 18:12 #2
1)
Du kan ikke undgå this i dette eksempel da der er 2 attributter som herrer res2. (sig til hvis du vil have dette uddybet :-)

2)
hvad skal din if kunne?
Avatar billede soreno Praktikant
06. oktober 2003 - 18:12 #3
Mener du, hvis res1 er større end res OG res1 er større end res3 ?

if((res1 > res2) && (res1 > res3))
{
  coordinator = true;
}

this skal du kun bruge når der kan opstå tvivl om hvilken variabel der hentydes til.
F.eks. i en konstruktør.
Avatar billede repsak Nybegynder
06. oktober 2003 - 18:14 #4
forstår ikke hvorfor til vil erklære P2 res2 = new P2() inde i constructoren
Avatar billede dennish Nybegynder
06. oktober 2003 - 18:25 #5
den er heller ikke erklæret inde i constructoren. Den bliver erklæret i min metode startElection. Klassen hedder P1.java
Avatar billede dennish Nybegynder
06. oktober 2003 - 18:26 #6
smider i ikke lige nogle svar
Avatar billede repsak Nybegynder
06. oktober 2003 - 18:41 #7
joeh - lykkedes det?
Avatar billede repsak Nybegynder
06. oktober 2003 - 18:41 #8
hovsa :-)
Avatar billede soreno Praktikant
06. oktober 2003 - 18:51 #9
Det lykkedes for mig !
:-)
Avatar billede frosig Nybegynder
06. oktober 2003 - 19:19 #10
svar
Avatar billede napsi Nybegynder
06. oktober 2003 - 20:23 #11
Lidt spaghetti-agtigt at have variable, der ikke er relateret og endda af forskellig type, med samme navne. Pænere med mere passende navne og så slipper du samtidig for "this". :)
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