Java プラットフォーム 1.2

java.lang
クラス Math

java.lang.Object
  |
  +--java.lang.Math

public final class Math
extends Object

Math クラスは、指数関数、対数関数、平方根、および三角関数といった基本的な数値処理を実行するためのメソッドを含んでいます。

Java プログラムの移植性を保つために、このパッケージにある多くの数値関数の定義は、既存のアルゴリズムと同一の計算結果を出すことが求められています。こうしたアルゴリズムは、有名なネットワークライブラリである netlib から "Freely Distributable Math Library" (fdlibm) パッケージとして入手可能です。これらのアルゴリズムは C 言語で記述されており、すべての浮動小数点演算が Java の浮動小数点演算規則に従って実行されるものと見なされます。

ネットワークライブラリは次の URL から入手できます。

   http://sunsite.unc.edu/
 

Java の数学ライブラリは fdlibm 1995 年 1 月 4 日付けのバージョンを基に定義されています。fdlibm で複数の定義が与えられている関数 (たとえば acos) については、IEEE 754 コア関数のバージョンを使用してください (ファイル名が e で始まるファイルの中にある)。

導入されたバージョン:
JDK1.0

フィールドの概要
static double E
          自然対数の底 e にもっとも近い double 値です。
static double PI
          円周とその直径の比 pi にもっとも近い double 値です。
 
メソッドの概要
static double abs(double a)
          double 値の絶対値を返します。
static float abs(float a)
          float 値の絶対値を返します。
static int abs(int a)
          int 値の絶対値を返します。
static long abs(long a)
          Long 値の絶対値を返します。
static double acos(double a)
          指定された角度の逆余弦 (アークコサイン) を、0.0 〜 piの範囲で返します。
static double asin(double a)
          指定された角度の逆正弦 (アークサイン) を、-pi/2 〜 pi/2 の範囲で返します
static double atan(double a)
          指定された角度の逆正接 (アークタンジェント) を、-pi/2 〜 pi/2 の範囲で返します。
static double atan2(double a, double b)
          直交座標 (ba) を極座標 (r, theta) に変換します。
static double ceil(double a)
          引数の値以上で、計算上の整数と等しい、最小の (負の無限大にもっとも近い) double 値を返します。
static double cos(double a)
          指定された角度の余弦 (コサイン) を返します。
static double exp(double a)
          e (2.718...)
static double floor(double a)
          引数の値以下で、計算上の整数と等しい、最大の (無限大にもっとも近い) double 値を返します。
static double IEEEremainder(double f1, double f2)
          IEEE 754 標準に従って、2 個の引数について剰余を計算します。
static double log(double a)
          指定された double の自然対数値 (底は e) を返します。
static double max(double a, double b)
          2 つの double 値の大きい方を返します。
static float max(float a, float b)
          2 つの float 値の大きい方を返します。
static int max(int a, int b)
          2 つの int 値うちの大きい方を返します。
static long max(long a, long b)
          2 つの long 値の大きい方を返します。
static double min(double a, double b)
          2 つの double 値の小さい方を返します。
static float min(float a, float b)
          2 つの float 値の小さい方を返します。
static int min(int a, int b)
          2 つの int 値の小さい方を返します。
static long min(long a, long b)
          2 つの long 値の小さい方を返します。
static double pow(double a, double b)
          1 番目の引数を、2 番目の引数で累乗した値を返します。
static double random()
          0.0 以上で、1.0 より小さい乱数を返します。
static double rint(double a)
          引数にもっとも近い整数値を返します。
static long round(double a)
          引数にもっとも近い long を返します。
static int round(float a)
          引数にもっとも近い int を返します。
static double sin(double a)
          指定された角度の正弦 (サイン) を返します。
static double sqrt(double a)
          double 値の平方根を返します。
static double tan(double a)
          指定された角度の正接 (タンジェント) を返します。
static double toDegrees(double angrad)
          ラジアンで計測した角度を、相当する度に換算します。
static double toRadians(double angdeg)
          度で計測した角度を、相当するラジアンに換算します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

E

public static final double E
自然対数の底 e にもっとも近い double 値です。

PI

public static final double PI
円周とその直径の比 pi にもっとも近い double 値です。
メソッドの詳細

sin

public static double sin(double a)
指定された角度の正弦 (サイン) を返します。
パラメータ:
a - ラジアンで表した角度
戻り値:
引数の正弦 (サイン)

cos

public static double cos(double a)
指定された角度の余弦 (コサイン) を返します。
パラメータ:
a - ラジアンで表した角度
戻り値:
引数の余弦 (コサイン)

tan

public static double tan(double a)
指定された角度の正接 (タンジェント) を返します。
パラメータ:
a - ラジアンで表した角度
戻り値:
引数の正接 (タンジェント)

asin

public static double asin(double a)
指定された角度の逆正弦 (アークサイン) を、-pi/2 〜 pi/2 の範囲で返します
パラメータ:
a - double 値。この値の逆正接が返される
戻り値:
引数の逆正弦 (アークサイン)

acos

public static double acos(double a)
指定された角度の逆余弦 (アークコサイン) を、0.0 〜 piの範囲で返します。
パラメータ:
a - double 値。この値の逆余弦が返される
戻り値:
引数の逆余弦 (アークコサイン)

atan

public static double atan(double a)
指定された角度の逆正接 (アークタンジェント) を、-pi/2 〜 pi/2 の範囲で返します。
パラメータ:
a - double 値。この値の逆正接が返される
戻り値:
引数の逆正接 (アークタンジェント)

toRadians

public static double toRadians(double angdeg)
度で計測した角度を、相当するラジアンに換算します。
パラメータ:
angdeg - 角度 (単位は度)
戻り値:
ラジアンで表した、角度 angdeg の計測値
導入されたバージョン:
JDK1.2

toDegrees

public static double toDegrees(double angrad)
ラジアンで計測した角度を、相当する度に換算します。
パラメータ:
angrad - 角度 (単位はラジアン)
戻り値:
度で表した、角度 angrad の計測値
導入されたバージョン:
JDK1.2

exp

public static double exp(double a)
e (2.718...) を double 値で累乗した指数関数値を返します。
パラメータ:
a - double
戻り値:
ea の値。e は自然対数の底

log

public static double log(double a)
指定された double の自然対数値 (底は e) を返します。
パラメータ:
a - 0.0 よりも大きい数値
戻り値:
ln a の値。a の自然対数

sqrt

public static double sqrt(double a)
double 値の平方根を返します。
パラメータ:
a - double
戻り値:
a の平方根。引数が NaN であるかゼロよりも小さい場合は、結果も NaN

IEEEremainder

public static double IEEEremainder(double f1,
                                   double f2)
IEEE 754 標準に従って、2 個の引数について剰余を計算します。剰余の値は、計算上は f1 - f2 × n に等しくなります。ここで、nf1/f2 の商の正確な値にもっとも近い整数です。f1/f2 に同じ程度に近似する整数が 2 つ存在する場合、n には偶数が選択されます。剰余がゼロになる場合、その符号は 1 番目の引数の符号と同じになります。
パラメータ:
f1 - 被除数
f2 - 除数
戻り値:
f1f2 で除算したときの剰余

ceil

public static double ceil(double a)
引数の値以上で、計算上の整数と等しい、最小の (負の無限大にもっとも近い) double 値を返します。
パラメータ:
a - double
戻り値:
引数の値以上で、計算上の整数と等しい、最小の (負の無限大にもっとも近い) double

floor

public static double floor(double a)
引数の値以下で、計算上の整数と等しい、最大の (無限大にもっとも近い) double 値を返します。
パラメータ:
a - double
a - 割り当てられた値
戻り値:
引数の値以下で、計算上の整数と等しい、最大の (無限大にもっとも近い) double

rint

public static double rint(double a)
引数にもっとも近い整数値を返します。
パラメータ:
a - double
戻り値:
計算上の整数に等しく a にもっとも近い double 値。引数に同じ程度に近似する double 値の整数が 2 つ存在する場合、結果には偶数の整数値が選択される

atan2

public static double atan2(double a,
                           double b)
直交座標 (ba) を極座標 (r, theta) に変換します。このメソッドは、位相 theta (シータ) は a/b の逆正接 (アークタンジェント) を -pipi の範囲で計算して求めます。
パラメータ:
a - double
b - double
戻り値:
直交座標上の点 (ba) に対応する極座標上の点 (rtheta) の theta (シータ) 成分

pow

public static double pow(double a,
                         double b)
1 番目の引数を、2 番目の引数で累乗した値を返します。

(a == 0.0) であれば、b0.0 よりも大きくなければなりません。そうでない場合は例外がスローされます。(a <= 0.0) であり、かつ b が自然数でない場合にも例外がスローされます。

パラメータ:
a - double
b - double
戻り値:
ab の値
例外:
ArithmeticException - (a == 0.0) かつ (b <= 0.0) である場合。または (a <= 0.0) かつ b が自然数でない場合

round

public static int round(float a)
引数にもっとも近い int を返します。

引数が負の無限大である場合、または Integer.MIN_VALUE 以下の任意の値である場合、結果は Integer.MIN_VALUE の値に等しくなります。

引数が正の無限大である場合、または Integer.MAX_VALUE 以上の任意の値である場合、結果は Integer.MAX_VALUE の値に等しくなります。

パラメータ:
a - float
戻り値:
引数をもっとも近い int 値に丸めた値
関連項目:
Integer.MAX_VALUE, Integer.MIN_VALUE

round

public static long round(double a)
引数にもっとも近い long を返します。

引数が負の無限大である場合、または Long.MIN_VALUE 以下の任意の値である場合、結果は Long.MIN_VALUE の値に等しくなります。

引数が正の無限大である場合、または Long.MAX_VALUE 以上の任意の値である場合、結果は Long.MAX_VALUE の値に等しくなります。

パラメータ:
a - double
戻り値:
数をもっとも近い long 値に丸めた値
関連項目:
Long.MAX_VALUE, Long.MIN_VALUE

random

public static double random()
0.0 以上で、1.0 より小さい乱数を返します。戻り値は、この範囲の近似的な一様分布から擬似無作為に選択されます。

最初にこのメソッドが呼び出されたときに、メソッドは単一の新しい擬似乱数発生関数を作成します。これは、式

new java.util.Random
とまったく同じです。作成された擬似乱数発生関数は、以後このメソッドへのすべての呼び出しに使われます。他の場所では使われません。

このメソッドは、複数のスレッドが正しく使えるよう適切に同期されます。しかし、多数のスレッドで擬似乱数を高頻度で発生する必要がある場合は、スレッド独自の擬似乱数発生関数を用意して各スレッドのコンテンションを減らしてもかまいません。

戻り値:
double の擬似乱数。範囲は、0.0 以上 1.0 未満
関連項目:
Random.nextDouble()

abs

public static int abs(int a)
int 値の絶対値を返します。 引数が負でない場合は引数そのものが返されます。引数が負の場合は、その正負を逆にした値が返されます。

引数が Integer.MIN_VALUE の値 (int の最小値) と等しい場合は、結果も同じ値 (負の値) になります。

パラメータ:
a - int
戻り値:
引数の絶対値
関連項目:
Integer.MIN_VALUE

abs

public static long abs(long a)
Long 値の絶対値を返します。 引数が負でない場合は引数そのものが返されます。引数が負の場合は、その正負を逆にした値が返されます。

引数が Long.MIN_VALUE の値 (long の最小値) と等しい場合は、結果も同じ値 (負の値) になります。

パラメータ:
a - long
戻り値:
引数の絶対値
関連項目:
Long.MIN_VALUE

abs

public static float abs(float a)
float 値の絶対値を返します。 引数が負でない場合は引数そのものが返されます。引数が負のときは、その正負を逆にした値が返されます。
パラメータ:
a - float
戻り値:
引数の絶対値

abs

public static double abs(double a)
double 値の絶対値を返します。 引数が負でない場合は引数そのものが返されます。引数が負の場合は、その正負を逆にした値が返されます。
パラメータ:
a - double
戻り値:
引数の絶対値

max

public static int max(int a,
                      int b)
2 つの int 値うちの大きい方を返します。
パラメータ:
a - int
b - int
戻り値:
ab のどちらか大きい方

max

public static long max(long a,
                       long b)
2 つの long 値の大きい方を返します。
パラメータ:
a - long
b - long
戻り値:
ab のどちらか大きい方

max

public static float max(float a,
                        float b)
2 つの float 値の大きい方を返します。どちらの数値も NaN である場合、結果は NaN になります。数値比較演算子とは異なり、このメソッドは、負のゼロが厳密には正のゼロよりも小さいとされることを考慮します。
パラメータ:
a - float
b - float
戻り値:
ab の大きい方の値

max

public static double max(double a,
                         double b)
2 つの double 値の大きい方を返します。どちらの数値も NaN である場合、結果は NaN になります。数値比較演算子とは異なり、このメソッドは、負のゼロが厳密には正のゼロよりも小さいとされることを考慮します。
パラメータ:
a - double
b - double
戻り値:
ab のどちらか大きい方

min

public static int min(int a,
                      int b)
2 つの int 値の小さい方を返します。
パラメータ:
a - int
b - int
戻り値:
ab のどちらか小さい方

min

public static long min(long a,
                       long b)
2 つの long 値の小さい方を返します。
パラメータ:
a - long
b - long
戻り値:
ab のどちらか小さい方

min

public static float min(float a,
                        float b)
2 つの float 値の小さい方を返します。どちらの数値も NaN である場合、結果は NaN になります。数値比較演算子とは異なり、このメソッドは、負のゼロが厳密には正のゼロよりも小さいとされることを考慮します。
パラメータ:
a - float
b - float
戻り値:
ab のどちらか小さい方

min

public static double min(double a,
                         double b)
2 つの double 値の小さい方を返します。どちらの数値も NaN である場合、結果は NaN になります。数値比較演算子とは異なり、このメソッドは、負のゼロが厳密には正のゼロよりも小さいとされることを考慮します。
パラメータ:
a - double
b - double
戻り値:
ab のどちらか小さい方

Java プラットフォーム 1.2

バグや機能要求の報告
新しい javadoc の表示についてのコメントやご提案
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.