Niestatyczna funkcja i dorobienie referencji

Odpowiedz Nowy wątek
2014-12-20 19:55
0

Mam coś takiego:

int liczba = 2;
triple(200,liczba)
 
}
class xyz {
public void triple(double procent, int liczba) {
        wynik2 = liczba * 3;
    }
}

Czy muszę zrobić do tego referencję?
w main:

triple(200,2)

Wtedy nie istnieje ta funkcja w klasie głównej.

wynik5.triple(200,2)

Cannot invoke triple(int, int) on the primitive type int
Jak sobie z tym poradzić aby działać na zwykłym int? Na tablicy ten sposób na pewno działa.

dodanie znacznika <code> - @furious programming

edytowany 1x, ostatnio: furious programming, 2014-12-20 23:31

Pozostało 580 znaków

2014-12-20 20:00
2

To co napisałeś w ogóle nie ma sensu, ale patrząc na kod zakładam, że o to Ci chodzi:

int liczba = 2;
xyz obj = new xyz();
obj.triple(200,liczba)

░█░█░█░█░█░█░█░█░█░█░█░

Pozostało 580 znaków

2014-12-20 20:03
class xyz {
    public double triple(double procent, int liczba) {
        return liczba * procent;
    }
}
 
class Ideone {
    public static void main (String[] args) {
        int liczba = 2;
        xyz foo = new xyz();
        double wynik = foo.triple(200, liczba);
    }
}

Pozostało 580 znaków

2014-12-21 11:43
0
 
                Pracownik[] zaloga = new Pracownik[3];
                ...
                int liczba = 2;
        Pracownik foo = new Pracownik(null, liczba, liczba, liczba, liczba);
        double score = foo.potrajarka(200, liczba);
        System.out.println("Wynik: " + score);
    }
}
 
class Pracownik {
    public Pracownik(String n, double s, int lata, int miesiace, int dnie) {
        zarobki = s;
        imie = n;
 
    }
 
    public double potrajarka(double procent, int liczba) {
        return liczba * (procent / 100);
    }

Czyli zawsze muszę wypełniać parametrami z funkcji Pracownik tak?

Pracownik foo = new Pracownik(null, liczba, liczba, liczba, liczba);

Ewentualnie stworzyć nową klasę.

Pozostało 580 znaków

2014-12-21 13:16
0
keyr napisał(a):

Czyli zawsze muszę wypełniać parametrami z funkcji Pracownik tak?

Pracownik foo = new Pracownik(null, liczba, liczba, liczba, liczba);

Ewentualnie stworzyć nową klasę.
Zupełnie nie rozumiem o czym piszesz.

Pracownik to klasa, nie funkcja. Ma konstruktor, który przyjmuje 5 parametrów:

 public Pracownik(String n, double s, int lata, int miesiace, int dnie)

więc jak tworzysz obiekt za pomocą tego konstruktora to musisz podać mu 5 parametrów.

Pozostało 580 znaków

2014-12-21 13:56
0

pomijając sensowność tych parametrów to przy takiej ilości w konstruktorze już lepiej stosować builder pattern


PROGRAMY NA ZAMÓWIENIE, ZALICZENIA STUDENCKIE, KONFIGURACJA SERWERÓW, SYSTEMÓW I BAZ DANYCH, STRONY INTERNETOWE, POMOC W PROGRAMOWANIU, POPRAWIENIE I OPTYMALIZACJA APLIKACJI
JAVA, C++, LINUX, WWW, SQL, PYTHON
POSIADAM KOMERCYJNE DOŚWIADCZENIE
TANIO, SZYBKO I PORZĄDNIE
Z KOMENTARZAMI OBJAŚNIAJĄCYMI KOD
PISZ NA PRYWATNĄ WIADOMOŚĆ
CENY JUŻ OD 49,99ZŁ ZA PROGRAM
ZAJMIJ SIĘ TYM CO CIĘ NAPRAWDĘ INTERESUJE!

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0