真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java中的數(shù)學(xué)計(jì)算函數(shù)的總結(jié)

java中的數(shù)學(xué)計(jì)算函數(shù)

10多年的南岸網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都營(yíng)銷網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整南岸建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“南岸網(wǎng)站設(shè)計(jì)”,“南岸網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

Math類:

 java.lang.Math類中包含基本的數(shù)字操作,如指數(shù)、對(duì)數(shù)、平方根和三角函數(shù)。
 java.math是一個(gè)包,提供用于執(zhí)行任意精度整數(shù)(BigInteger)算法和任意精度小數(shù)(BigDecimal)算法的類。
 
 java.lang.Math類中包含E和PI兩個(gè)靜態(tài)常量,以及進(jìn)行科學(xué)計(jì)算的類(static)方法,可以直接通過(guò)類名調(diào)用。
 public static final Double E = 2.7182818284590452354 
 public static final Double PI = 3.14159265358979323846
 
 public static long abs(double x):傳回 x 的絕對(duì)值。X也可int long float
 public static long sin(double x): 傳回x徑度的正弦函數(shù)值 
 public static long cos(double x):傳回x徑度的余弦函數(shù)值  
 public static long tan(double x): 傳回x徑度的正切函數(shù)值 
 public static long asin(double x):傳回x值的反正弦函數(shù)值。
 public static long acos(double x):傳回x值的反余弦函數(shù)值。
 public static long atan(double x):傳回x值的反正切函數(shù)值。 
 public static long atan2(double x, double y):傳回極坐標(biāo)(polar)的θ值 
 public static long floor(double x):傳回不大于x的最大整數(shù)值 
 public static long ceil(double x):傳回不小于x的最小整數(shù)值。 
 public static long exp(double x):傳回相當(dāng)于ex值 
 public static long log(double x):傳回x的自然對(duì)數(shù)函數(shù)值 
 public static long max(double x,double y):傳回x、y較大數(shù) 
 public static long min(double x,double y):傳回x、y較小數(shù) 
 public static long pow(double x,double y):傳回x的y次冪值 
 public static long sqrt(double x): 傳回x開(kāi)平方值 
 public static long rint(double x):傳回最接近x的整數(shù)值 
 public static long round(double x):傳回x的四舍五入值 
 public static long toDegrees(double angrad):傳回將angrad徑度轉(zhuǎn)換成角度 
 public static long toRadians(double angdeg): 傳回將angdeg角度轉(zhuǎn)換成徑度
 public static long random():傳回隨機(jī)數(shù)值,產(chǎn)生一個(gè)0-1之間的隨機(jī)數(shù)(不包括0和1)
 

NumberFormat類:

(public abstract class NumberFormat extends Format)
用java.text.NumberFormat類對(duì)輸出的數(shù)字結(jié)果進(jìn)行必要的格式化。

 使用該類如下方法類實(shí)例化一個(gè)NumberFormat對(duì)象:
  public static final NumberFormat getInstance()
 然后用該對(duì)象調(diào)用如下方法可以格式化數(shù)字number(返回字符串對(duì)象):
  public final String format(double number)
 
 NumberFormat類有如下常用方法:
 public void setMaximumFractionDigits(int newValue)//設(shè)置數(shù)的小數(shù)部分所允許的最大位數(shù)。
 public void setMaximumIntegerDigits(int newValue)//設(shè)置數(shù)的整數(shù)部分所允許的最大位數(shù)。
 public void setMinimumFractionDigits(int newValue)//設(shè)置數(shù)的小數(shù)部分所允許的最小位數(shù)。
 public void setMinimumIntegerDigits(int newValue)//設(shè)置數(shù)的整數(shù)部分所允許的最小位數(shù)。
 (更多方法及用法看JDK6API參考。)

  BigInteger類、BigDecimal類:

 java.math包中的BigInteger類和BigDecimal類分別提供任意精度的整數(shù)和小數(shù)運(yùn)算。
 兩個(gè)類設(shè)計(jì)思想一樣,這里只對(duì)BigInterger類稍做介紹,細(xì)節(jié)可以查看JDK6API參考。
 
 構(gòu)造方法如下:
  BigInteger(String val) //將 BigInteger 的十進(jìn)制字符串表示形式轉(zhuǎn)換為 BigInteger。
  還有很多考慮周全的構(gòu)造函數(shù),建議要準(zhǔn)備寫特殊需求的BigInteger前先認(rèn)真翻下JDK。
 
 常用方法:
  abs() //返回其值是此BigInteger的絕對(duì)值的BigInteger。
  add(BigInteger val) //返回其值為(this+val)的BigInteger。
  subtract(BigInteger val) //返回其值為(this-val)的BigInteger。
  multiply(BigInteger val) // 返回其值為(this*val)的BigInteger。
  divide(BigInteger val) //返回其值為(this/val)的BigInteger。
  remainder(BigInteger val) //返回其值為(this%val)的BigInteger。
  compareTo(BigInteger val) //將此BigInteger與指定的BigInteger進(jìn)行比較。返回值1、0、-1分別表示大于、等于、小于
  pow(int exponent) //返回當(dāng)前大數(shù)的exponent次冪。
  toString() //返回此BigInteger的十進(jìn)制字符串表示形式。
  toString(int radix) //返回此BigInteger的給定基數(shù)(radix進(jìn)制)的字符串表示形式。

補(bǔ)充:

(1)abs():返回某數(shù)字的絕對(duì)值.參數(shù)可以是float、double、long或int。如果是byte或short類型,那么它們會(huì)被強(qiáng)制轉(zhuǎn)換成int類型。
(2)ceil()會(huì)找到下一個(gè)最大整數(shù)。例如參數(shù)為9.01時(shí),返回10.0。為-0.1時(shí),返回-0.0。返回比參數(shù)大的整數(shù),而且都是雙精度類型的。如果參數(shù)是整數(shù),則該方法會(huì)返回這個(gè)參數(shù)的雙精度型。
(3)floor()返回緊鄰的最小整數(shù)。作用與ceil()正好相反,返回的是比參數(shù)小的整數(shù),而且都是雙精度型。如果參數(shù)為整數(shù),則返回這個(gè)參數(shù)的雙精度型。
(4)max()返回兩個(gè)值中的最大值,只支持float double long int 不支持byte short。
(5)min()返回兩個(gè)值中的最小值,只支持float double long int 不支持byte short。
(6)random()返回一個(gè)隨機(jī)數(shù),一個(gè)在0.0到1.0之間的雙精度數(shù)。
(7)round()返回與某浮點(diǎn)數(shù)值最接近的整數(shù)值。參數(shù)可以為double和folat兩種,而且支持四舍五入。例如:參數(shù)為9.01時(shí),返回9,參數(shù)為9.5時(shí),返回10,參數(shù)為-9.5時(shí),返回-9。
(8)sqrt()返回某數(shù)值的平方根。如果該參數(shù)是"非數(shù)字"類型(NaN),或者小于零,則返回是NaN。

需要注意的問(wèn)題,類型自動(dòng)提升,其實(shí)類型提升是在運(yùn)算之前完成的 

加法運(yùn)算 
  byte a = 1; 
  byte b = 2; 
  byte c = a+b; 
  報(bào)錯(cuò),因?yàn)閍+b之前會(huì)將a,b自動(dòng)提升為int 
  正確為: byte c = (byte)(a+b); 
減法運(yùn)算 
  加法運(yùn)算是一樣的 
乘法運(yùn)算 
  同樣遵循類型自動(dòng)提升 
  int a = 3*5;  結(jié)果為: 15 int類型 
  double b = 3*5.0;  結(jié)果為: 15.0 double類型 
除法運(yùn)算 
  兩個(gè)整數(shù)相除結(jié)果為整數(shù),小數(shù)位截?cái)?
    int a = 10/4; 結(jié)果為2 
    int b 5/7; 結(jié)果為0 
  如果參與運(yùn)算有浮點(diǎn)數(shù),則進(jìn)行浮點(diǎn)數(shù)除 
    double a = 10.0/5.0;  結(jié)果為2.0 
    double b = 10.0/5;   結(jié)果為2.0 
    double c = 10.0/0;   結(jié)果為Infinity(正無(wú)窮大) 
    double d = -10.0/0;   結(jié)果為-Infinity(負(fù)無(wú)窮大) 
    double e = 0.0/0;    結(jié)果為NaN(不是數(shù)字) 
求余運(yùn)算分3步 
  第一步: 左邊操作數(shù)的絕對(duì)值減去右邊操作數(shù)的絕對(duì)值,得到差 
  第二步: 得到的差兩種情況 
    如果差比右邊操作數(shù)的絕對(duì)值大,再執(zhí)行第一步 
    如果差比右邊操作數(shù)的絕對(duì)值小,將差返回 
  第三步: 結(jié)果的符號(hào)為左邊操作數(shù)的符號(hào) 
  需要注意的是: 整數(shù)進(jìn)行求余時(shí),右邊操作數(shù)為0,則報(bào)錯(cuò),浮點(diǎn)數(shù)進(jìn)行求余時(shí),右邊操作數(shù)為0,則為NaN 
    15%4 = 3; 
    -15%4 = -3; 
    15%0 報(bào)錯(cuò) 
    15.0%0 = NaN 
自增自減運(yùn)算  
  int b = a++; 先把a(bǔ)的值賦給b,a再+1  
  int b = ++a; 先給a+1,再把a(bǔ)的值賦給b  
關(guān)系運(yùn)算符 
  ==,!=,>,>=,<,<= 
邏輯運(yùn)算符 
  短路與: 使用&&表示,雙目運(yùn)算符,只要第一個(gè)操作數(shù)為false,就發(fā)生短路,后面不執(zhí)行 
    短路或: 使用||表示,雙目運(yùn)算符,只要第一個(gè)操作數(shù)為true,就發(fā)生短路,后面不執(zhí)行 
    非短路與: 使用&表示,雙目運(yùn)算符,如果第一個(gè)操作數(shù)為false,第二個(gè)操作數(shù)還會(huì)執(zhí)行 
  非短路或: 使用|表示,雙目運(yùn)算符,如果第一個(gè)操作數(shù)為true,第二個(gè)操作數(shù)還會(huì)執(zhí)行 
    String str = null; 
    if(str != null & !str.equals("")){} 報(bào)錯(cuò),空指針異常,因?yàn)榈诙€(gè)操作數(shù)也執(zhí)行了 
    if(str != null & !str.equals("")){} 不報(bào)錯(cuò),因?yàn)榈诙€(gè)操作數(shù)沒(méi)有執(zhí)行 
  非運(yùn)算 
三目運(yùn)算符 
  5>10?true:false; 
位運(yùn)算 
  位運(yùn)算cpu直接支持的,效率最高 
  位運(yùn)算允許對(duì)整數(shù)中單個(gè)比特進(jìn)行操作,為運(yùn)算會(huì)對(duì)兩個(gè)操作數(shù)中對(duì)應(yīng)比特執(zhí)行布爾代數(shù)運(yùn)算,產(chǎn)生結(jié)果 
  & 與: 二者比特都是1,則結(jié)果為1,否則為0 
  | 或: 二者比特都是0,則結(jié)果為0,否則為1 
  ^ 異或: 二者比特相同,則結(jié)果為0,否則為1 
  ~ 非: 講被操作數(shù)按位取反 
    int a = 12|2; // 1100|0010 打印結(jié)果14 
      1100 
    |  0010 
    -------- 
      1110 
<< 左移 
  int a = 8<<1; //打印16 
  int為32bit 
    8的二進(jìn)制位:         0000 0000 0000 0000 0000 0000 0000 1000 
    左移動(dòng)1bit,在右邊填充0: 0000 0000 0000 0000 0000 0000 0001 0000 
>> 右移 
  int a = 8>>1; //打印4 
  int為32bit 
    8的二進(jìn)制位:         0000 0000 0000 0000 0000 0000 0000 1000 
    右移動(dòng)1bit,在右邊填充0: 0000 0000 0000 0000 0000 0000 0000 0100 

數(shù)學(xué)常量

Math.PI: 圓周率常量 
Math.E: 自然常量 
數(shù)學(xué)函數(shù)
[java] view plaincopy 
abs() 
  返回絕對(duì)值 
ceil() 
  返回一個(gè)大于等于操作數(shù)的最近整數(shù)值 
  Math.ceil(8.7); //9.0 
  Math.ceil(9.0); //9.0 
  Math.ceil(9.0); //9.0 
floor() 
  返回一個(gè)不大于操作數(shù)的最近整數(shù)值 
  Math.floor(8.7); //8.0 
  Math.floor(9.0); //8.0 
  Math.floor(9.0); //9.0 
max() 
  返回兩個(gè)操作數(shù)的最大一個(gè) 
  Math.max(1,2); 
min() 
  返回兩個(gè)操作數(shù)的最小一個(gè) 
  Math.min(1,2); 
random() 
  返回大于等于0.0小于1.0的隨機(jī)double型 
round() 
  返回最接近操作數(shù)的整數(shù)(四舍五入) 
toRadians() 
  轉(zhuǎn)換為弧度 
  Math.toRadians(90.0); //1.57079... 
sin() 
  返回給定角度的正弦,操作數(shù)是double型 
  Math.sin(Math.toRadians(90.0)); //求90度角的正弦值,返回1.0 
cos() 
  返回給定角度的余弦,操作數(shù)是double型 
  Math.cos(Math.toRadians(0.0)); //求0度角的余弦值,返回1.0 
tan() 
  返回給定角度的正切,操作數(shù)是double型 
  Math.tan(Math.toRadians(45.0)); //求45度角的正切值,返回1.0 
sqrt() 
  返回給定值的平方根,,操作數(shù)是double型 
  Math.sqrt(4.0); //2.0 
  Math.sqrt(-4.0); //Nan 
toDegrees() 
  返回給定弧度的角度值 
  Math.toDegrees(Math.PI*0.5); //90.0 

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!


當(dāng)前標(biāo)題:java中的數(shù)學(xué)計(jì)算函數(shù)的總結(jié)
新聞來(lái)源:http://weahome.cn/article/gjsdhs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部