求助:面试问到,java中如何计算2的128次方
展开全部
package com.mendal.test1;
import java.math.BigInteger;
import org.junit.Test;
public class Test4 {
@Test
public void main( ) {
long i = 2;
System.out.println(i);
double j = (double) (i << 60) ;
/*
* 这里标注一下,如果i大于61的话会出现越界情况,所以没次达到60次方的时候停顿一下
*/
j=j*j*64;
System.out.println("main:"+j);
}
@Test
public void test1(){
double sum=2;
for(int i=1;i<=127;i++){
sum*=2;
}
System.out.println("test1:"+sum);
}
@Test
public void test2(){
BigInteger b = BigInteger.valueOf(2);
System.out.println("test2:"+b.shiftLeft(127));
}
@Test
public void test3(){
double sum=Math.pow(2,128);;
System.out.println("test3:"+sum);
}
}
import java.math.BigInteger;
import org.junit.Test;
public class Test4 {
@Test
public void main( ) {
long i = 2;
System.out.println(i);
double j = (double) (i << 60) ;
/*
* 这里标注一下,如果i大于61的话会出现越界情况,所以没次达到60次方的时候停顿一下
*/
j=j*j*64;
System.out.println("main:"+j);
}
@Test
public void test1(){
double sum=2;
for(int i=1;i<=127;i++){
sum*=2;
}
System.out.println("test1:"+sum);
}
@Test
public void test2(){
BigInteger b = BigInteger.valueOf(2);
System.out.println("test2:"+b.shiftLeft(127));
}
@Test
public void test3(){
double sum=Math.pow(2,128);;
System.out.println("test3:"+sum);
}
}
展开全部
Math.pow(2,n) :: 表示2 的 n 次幂
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
答案是:340282366920938463463374607431768211456
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询