Java Academy · Lekcja

Klasa Math

Typowe funkcje matematyczne

Lekcja 1 z 413 kroki

Klasa Math to bezpłatna lekcja Java Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Java Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Java Academy zawiera 4 lekcji w sumie.

Klasa Math

java.lang.Math to wbudowana klasa zawierająca statyczne metody matematyczne. Znajduje się w pakiecie java.lang, więc nie trzeba jej importować. Metody wywołuje się na klasie: Math.sqrt(2).

Potęgi i pierwiastki

Math.pow(base, exp) podnosi liczbę do potęgi, a Math.sqrt(x) oblicza pierwiastek kwadratowy. Obie metody zwracają double.

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.pow(2, 10));
        System.out.println(Math.sqrt(144));
    }
}

Wartość bezwzględna

Math.abs zwraca wartość bezwzględną liczby, usuwając jej znak. Metoda jest przeciążona dla typów int, long, float i double.

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.abs(-42));
        System.out.println(Math.abs(-3.14));
    }
}

Minimum i maksimum

Math.min i Math.max zwracają odpowiednio mniejszą lub większą z dwóch wartości.

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.max(10, 25));
        System.out.println(Math.min(10, 25));
    }
}

Stałe PI i E

Klasa Math udostępnia dwie znane stałe: Math.PI i Math.E. Są to pola typu public static final double.

public class Main {
    public static void main(String[] args) {
        double radius = 3;
        double area = Math.PI * radius * radius;
        System.out.println("Area: " + area);
    }
}

Trygonometria

Funkcje trygonometryczne, takie jak Math.sin, Math.cos i Math.tan, działają na radianach, a nie na stopniach. Do konwersji należy użyć Math.toRadians.

public class Main {
    public static void main(String[] args) {
        double degrees = 90;
        double radians = Math.toRadians(degrees);
        System.out.println(Math.sin(radians));
    }
}

Logarytmy i funkcje wykładnicze

Math.log to logarytm naturalny (o podstawie e), Math.log10 ma podstawę 10, a Math.exp podnosi e do potęgi.

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.log10(1000));
        System.out.println(Math.exp(1));
    }
}

Hypot do obliczania odległości

Math.hypot(x, y) oblicza pierwiastek kwadratowy z sumy kwadratów x i y bez przepełnienia pośredniego, dzięki czemu idealnie nadaje się do obliczania odległości w 2D.

public class Main {
    public static void main(String[] args) {
        double dist = Math.hypot(3, 4);
        System.out.println(dist);
    }
}

Metody pomocnicze zapobiegające przepełnieniu liczb całkowitych

Metody takie jak Math.addExact i Math.multiplyExact zgłaszają ArithmeticException, jeśli wynik powoduje przepełnienie, zamiast po cichu zawijać wartość.

public class Main {
    public static void main(String[] args) {
        try {
            int result = Math.addExact(Integer.MAX_VALUE, 1);
            System.out.println(result);
        } catch (ArithmeticException e) {
            System.out.println("Overflow detected: " + e.getMessage());
        }
    }
}

Typy zwracane to double

Większość metod Math zwraca double. Jeśli potrzebują Państwo wartości int, należy jawnie wykonać rzutowanie: (int) Math.sqrt(16). Proszę pamiętać, że rzutowanie obcina wartość w kierunku zera.

public class Main {
    public static void main(String[] args) {
        int side = (int) Math.sqrt(16);
        System.out.println(side);
    }
}

Małe obliczenie

Można połączyć kilka metod Math, aby obliczyć wynik, na przykład przeciwprostokątną za pomocą kwadratów i pierwiastka kwadratowego.

public class Main {
    public static void main(String[] args) {
        double a = 5, b = 12;
        double c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
        System.out.println("Hypotenuse: " + c);
    }
}

Szybkie sprawdzenie

Proszę sprawdzić swoje rozumienie klasy Math.

Podsumowanie

Poznali Państwo klasę Math.

  • Jest statyczna i znajduje się w pakiecie java.lang, więc nie wymaga importu.
  • pow, sqrt, abs, min i max obsługują typowe operacje.
  • Dostępne są stałe PI i E.
  • Funkcje trygonometryczne używają radianów, a większość metod zwraca double.
Bezpłatny start

Ucz się Java dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
104
Lekcje
374

Często zadawane pytania

Czy lekcja „Klasa Math” jest bezpłatna?

Tak — pełny tekst „Klasa Math” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Java Academy, przejdź na CoddyKit PRO. Kurs Java Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Klasa Math”?

Typowe funkcje matematyczne Ćwiczysz Java Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Java Academy?

Nie wymagamy żadnego doświadczenia. Java Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Klasa Math”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Java Academy?

Tak. Każda lekcja Java Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Klasa Math
  2. Generowanie liczb losowych
  3. Losowe zakresy i tasowanie
  4. Zaokrąglanie i ograniczenia w Math
← Powrót do Java Academy