java大整数的用法

来源:互联网 发布:淘宝咋评价 编辑:程序博客网 时间:2024/05/16 11:49
importjava.math.BigInteger;publicclassabc{publicstaticvoidmain(String[] args){BigInteger bigInteger1=newBigInteger("123456789012345689123413241234109999321413253426256");BigInteger bigInteger2=newBigInteger("9999999999999999999999999999999999999999999999999");//add(加)bigInteger1=bigInteger1.add(bigInteger2);System.out.println(bigInteger1);//subtract(减)bigInteger1=bigInteger1.subtract(bigInteger2);System.out.println(bigInteger1);//multiplay(乘)bigInteger1=bigInteger1.multiply(bigInteger2);System.out.println(bigInteger1);//divide(除)bigInteger1=bigInteger1.divide(bigInteger2);System.out.println(bigInteger1);//negate(取相反数)bigInteger1=bigInteger1.negate();System.out.println(bigInteger1);//pow(次方)bigInteger1=bigInteger1.pow(10);System.out.println(bigInteger1);//最后一个(pow)输出822526259969629520153101122399497267810820646209100034107289685263315159632308144831374076434409138022661540729292142535548443646527802945487955787074321901682016392981171243389906853091274410210521602192777845202346331669556282743561193277694935461774695127206357303815843367925743175834034307102019549300834630106026193909111800769211331213033566417046739040269952221223183087733472654826824099458751406700255831111833751227821269483039466115059377165177024376865993794139752199224597958945119666176}}BigInteger支持任意精度的整数。也就是说,在运算中,可以准确地表示任何大小的整数值,而不会丢失任何信息。常用方法:abs()//返回其值是此BigInteger的绝对值的BigInteger。add(BigInteger val)//返回其值为(this+val)的BigInteger。subtract(BigIntegerval)//返回其值为(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进行比较。返回值1、0、-1分别表示大于、等于、小于pow(intexponent) //返回当前大数的exponent次幂。toString()//返回此BigInteger的十进制字符串表示形式。toString(intradix)//返回此BigInteger的给定基数(radix进制)的字符串表示形式。/*BigInteger和BigDecimal是在java.math包中已有的类,前者表示整数,后者表示浮点数。为什么用大数字?1)BigInteger:支持任意精度的整数,可以精确地表示任意大小的整数值,同时在运算过程中不会丢失任何信息。2)BigInteger:可以精确地表示任意精度的小数,同时在运算过程中不会丢失任何信息。注意:不能直接用符号如+、-来使用大数字,例如:*/importjava.math.BigInteger;publicclassabc {publicstaticvoidmain(String[] args) {inta = 231, b = 423, c = 1393;BigInteger x, y, z, ans;x = BigInteger.valueOf(a);y = BigInteger.valueOf(b);z = BigInteger.valueOf(c);ans = x.add(y); //加运算System.out.print(ans+"");ans = z.divide(y); //除运算System.out.print(ans+"");ans = x.mod(z); //模运算System.out.print(ans+"");if(ans.compareTo(x) == 0)System.out.println("1");}}//运算结果:6543 231 1/*主要有以下方法可以使用:BigIntegeradd(BigInteger other)BigIntegersubtract(BigInteger other)BigIntegermultiply(BigInteger other)BigIntegerdivide(BigInteger other)BigIntegermod(BigIntegerother)intcompareTo(BigInteger other)staticBigInteger valueOf(long x)*/



  用这样一组数字,0,1,1,2,3,5,8........,求第100个数是多少!看到这个题,会想到用一个int数组去做,但是内存溢出,后来换了long数组,还是一样,内存溢出, 跟上代码看看吧import java.math.BigInteger;public class abc{ public static void main(String[] args) { int num=100,i; int[] intarr=new int[100]; intarr[0]=0; intarr[1]=1; long[] longarr=new long[100]; longarr[0]=0; longarr[1]=1;       //longarr[0]=0L; longarr[1]=1L; BigInteger bigarr[]=new BigInteger[100]; bigarr[0]=BigInteger.ZERO; bigarr[1]=BigInteger.ONE;       //bigarr[0]=new BigInteger("0"); //bigarr[1]=new BigInteger("1");       //bigarr[0]=BigInteger.valueOf(0); //bigarr[1]=BigInteger.valueOf(1); for( i=2;i<num;i++){ intarr[i]=intarr[i-1]+intarr[i-2]; longarr[i]=longarr[i-1]+longarr[i-2]; bigarr[i]=bigarr[i-1].add(bigarr[i-2]); }  System.out.println("---整型数组存储结果---"); for(i=0;i<intarr.length;i++) System.out.println("intarr"+"["+i+"]"+":"+intarr[i]); System.out.println("---长整型数组存储结果---"); for(i=0;i<longarr.length;i++) System.out.println("longarr"+"["+i+"]"+":"+longarr[i]); System.out.println("---大整数数组存储结果---"); for(i=0;i<bigarr.length;i++)      System.out.println("bigarr"+"["+i+"]"+":"+bigarr[i]); } } ---整型数组存储结果---intarr[0]:0intarr[1]:1intarr[2]:1intarr[3]:2intarr[4]:3intarr[5]:5intarr[6]:8intarr[7]:13intarr[8]:21intarr[9]:34intarr[10]:55intarr[11]:89intarr[12]:144intarr[13]:233intarr[14]:377intarr[15]:610intarr[16]:987intarr[17]:1597intarr[18]:2584intarr[19]:4181intarr[20]:6765intarr[21]:10946intarr[22]:17711intarr[23]:28657intarr[24]:46368intarr[25]:75025intarr[26]:121393intarr[27]:196418intarr[28]:317811intarr[29]:514229intarr[30]:832040intarr[31]:1346269intarr[32]:2178309intarr[33]:3524578intarr[34]:5702887intarr[35]:9227465intarr[36]:14930352intarr[37]:24157817intarr[38]:39088169intarr[39]:63245986intarr[40]:102334155intarr[41]:165580141intarr[42]:267914296intarr[43]:433494437intarr[44]:701408733intarr[45]:1134903170intarr[46]:1836311903intarr[47]:-1323752223intarr[48]:512559680intarr[49]:-811192543intarr[50]:-298632863intarr[51]:-1109825406intarr[52]:-1408458269intarr[53]:1776683621intarr[54]:368225352intarr[55]:2144908973intarr[56]:-1781832971intarr[57]:363076002intarr[58]:-1418756969intarr[59]:-1055680967intarr[60]:1820529360intarr[61]:764848393intarr[62]:-1709589543intarr[63]:-944741150intarr[64]:1640636603intarr[65]:695895453intarr[66]:-1958435240intarr[67]:-1262539787intarr[68]:1073992269intarr[69]:-188547518intarr[70]:885444751intarr[71]:696897233intarr[72]:1582341984intarr[73]:-2015728079intarr[74]:-433386095intarr[75]:1845853122intarr[76]:1412467027intarr[77]:-1036647147intarr[78]:375819880intarr[79]:-660827267intarr[80]:-285007387intarr[81]:-945834654intarr[82]:-1230842041intarr[83]:2118290601intarr[84]:887448560intarr[85]:-1289228135intarr[86]:-401779575intarr[87]:-1691007710intarr[88]:-2092787285intarr[89]:511172301intarr[90]:-1581614984intarr[91]:-1070442683intarr[92]:1642909629intarr[93]:572466946intarr[94]:-2079590721intarr[95]:-1507123775intarr[96]:708252800intarr[97]:-798870975intarr[98]:-90618175intarr[99]:-889489150---长整型数组存储结果---longarr[0]:0longarr[1]:1longarr[2]:1longarr[3]:2longarr[4]:3longarr[5]:5longarr[6]:8longarr[7]:13longarr[8]:21longarr[9]:34longarr[10]:55longarr[11]:89longarr[12]:144longarr[13]:233longarr[14]:377longarr[15]:610longarr[16]:987longarr[17]:1597longarr[18]:2584longarr[19]:4181longarr[20]:6765longarr[21]:10946longarr[22]:17711longarr[23]:28657longarr[24]:46368longarr[25]:75025longarr[26]:121393longarr[27]:196418longarr[28]:317811longarr[29]:514229longarr[30]:832040longarr[31]:1346269longarr[32]:2178309longarr[33]:3524578longarr[34]:5702887longarr[35]:9227465longarr[36]:14930352longarr[37]:24157817longarr[38]:39088169longarr[39]:63245986longarr[40]:102334155longarr[41]:165580141longarr[42]:267914296longarr[43]:433494437longarr[44]:701408733longarr[45]:1134903170longarr[46]:1836311903longarr[47]:2971215073longarr[48]:4807526976longarr[49]:7778742049longarr[50]:12586269025longarr[51]:20365011074longarr[52]:32951280099longarr[53]:53316291173longarr[54]:86267571272longarr[55]:139583862445longarr[56]:225851433717longarr[57]:365435296162longarr[58]:591286729879longarr[59]:956722026041longarr[60]:1548008755920longarr[61]:2504730781961longarr[62]:4052739537881longarr[63]:6557470319842longarr[64]:10610209857723longarr[65]:17167680177565longarr[66]:27777890035288longarr[67]:44945570212853longarr[68]:72723460248141longarr[69]:117669030460994longarr[70]:190392490709135longarr[71]:308061521170129longarr[72]:498454011879264longarr[73]:806515533049393longarr[74]:1304969544928657longarr[75]:2111485077978050longarr[76]:3416454622906707longarr[77]:5527939700884757longarr[78]:8944394323791464longarr[79]:14472334024676221longarr[80]:23416728348467685longarr[81]:37889062373143906longarr[82]:61305790721611591longarr[83]:99194853094755497longarr[84]:160500643816367088longarr[85]:259695496911122585longarr[86]:420196140727489673longarr[87]:679891637638612258longarr[88]:1100087778366101931longarr[89]:1779979416004714189longarr[90]:2880067194370816120longarr[91]:4660046610375530309longarr[92]:7540113804746346429longarr[93]:-6246583658587674878longarr[94]:1293530146158671551longarr[95]:-4953053512429003327longarr[96]:-3659523366270331776longarr[97]:-8612576878699335103longarr[98]:6174643828739884737longarr[99]:-2437933049959450366---大整数数组存储结果---bigarr[0]:0bigarr[1]:1bigarr[2]:1bigarr[3]:2bigarr[4]:3bigarr[5]:5bigarr[6]:8bigarr[7]:13bigarr[8]:21bigarr[9]:34bigarr[10]:55bigarr[11]:89bigarr[12]:144bigarr[13]:233bigarr[14]:377bigarr[15]:610bigarr[16]:987bigarr[17]:1597bigarr[18]:2584bigarr[19]:4181bigarr[20]:6765bigarr[21]:10946bigarr[22]:17711bigarr[23]:28657bigarr[24]:46368bigarr[25]:75025bigarr[26]:121393bigarr[27]:196418bigarr[28]:317811bigarr[29]:514229bigarr[30]:832040bigarr[31]:1346269bigarr[32]:2178309bigarr[33]:3524578bigarr[34]:5702887bigarr[35]:9227465bigarr[36]:14930352bigarr[37]:24157817bigarr[38]:39088169bigarr[39]:63245986bigarr[40]:102334155bigarr[41]:165580141bigarr[42]:267914296bigarr[43]:433494437bigarr[44]:701408733bigarr[45]:1134903170bigarr[46]:1836311903bigarr[47]:2971215073bigarr[48]:4807526976bigarr[49]:7778742049bigarr[50]:12586269025bigarr[51]:20365011074bigarr[52]:32951280099bigarr[53]:53316291173bigarr[54]:86267571272bigarr[55]:139583862445bigarr[56]:225851433717bigarr[57]:365435296162bigarr[58]:591286729879bigarr[59]:956722026041bigarr[60]:1548008755920bigarr[61]:2504730781961bigarr[62]:4052739537881bigarr[63]:6557470319842bigarr[64]:10610209857723bigarr[65]:17167680177565bigarr[66]:27777890035288bigarr[67]:44945570212853bigarr[68]:72723460248141bigarr[69]:117669030460994bigarr[70]:190392490709135bigarr[71]:308061521170129bigarr[72]:498454011879264bigarr[73]:806515533049393bigarr[74]:1304969544928657bigarr[75]:2111485077978050bigarr[76]:3416454622906707bigarr[77]:5527939700884757bigarr[78]:8944394323791464bigarr[79]:14472334024676221bigarr[80]:23416728348467685bigarr[81]:37889062373143906bigarr[82]:61305790721611591bigarr[83]:99194853094755497bigarr[84]:160500643816367088bigarr[85]:259695496911122585bigarr[86]:420196140727489673bigarr[87]:679891637638612258bigarr[88]:1100087778366101931bigarr[89]:1779979416004714189bigarr[90]:2880067194370816120bigarr[91]:4660046610375530309bigarr[92]:7540113804746346429bigarr[93]:12200160415121876738bigarr[94]:19740274219868223167bigarr[95]:31940434634990099905bigarr[96]:51680708854858323072bigarr[97]:83621143489848422977bigarr[98]:135301852344706746049bigarr[99]:218922995834555169026

0 0
原创粉丝点击