我可以从两个整数中设置一个双精度数吗?

时间:2013-03-22 14:19:36

标签: java double

我想知道是否可以从两个整数中设置一个双精度,比如说:

int i = 1;
int j = 2;

double l = i.j;

所以希望我设置为1.2。

我目前正在尝试使用循环,但没有任何结果:

for (int i = 0; i < 8; i++){
    for(int l = 0; l < 8; l++){
        double piece = i.l;
            ChessSquare chessSquare = new ChessSquare(i, l, piece);
            int[][] square = new int[i][l];
            frame.add(chessSquare);
    }
}

6 个答案:

答案 0 :(得分:6)

int i=1;
int j=2;
String s = i+"."+j;
double d = Double.parseDouble(s);
System.out.println(d);

这个怎么样?我知道String concat和东西会很烦人(主要是例外),但当然,这可以帮助你,如果i&amp; j肯定会是数字。

答案 1 :(得分:1)

int i = 1;
int j = 2;

double l = i + j/Math.pow(10, Math.floor(Math.log10(j) + 1));

例如:

int i = 1234;
int j = 56789;

double l = i + j/Math.pow(10, Math.floor(Math.log10(j) + 1));

System.out.println(l);

<强>输出:

1234.56789

答案 2 :(得分:1)

这应该有用,虽然我不明白双棋在国际象棋比赛中的位置:

int i = 1;
int j = 2;
double piece = i + j /  Math.pow(10.0 , String.valueOf(j).length()) 

答案 3 :(得分:0)

这个解决方案怎么样:

double l = i + (j / 10d);

适用于0到9之间的j值(10> j> = 0);

答案 4 :(得分:0)

你去吧

int i = 1;
int j = 2;

double l = ((double)i*10+j)/10;

答案 5 :(得分:0)

如果你想将两个整数设置为一个双,你必须采用另一种方式。

请改为尝试:

int first = 1;
int second = 22;

double secondD = second;
while (secondD > 1) {
  secondD /= 10;
}

double firstD = first;
double result = firstD + secondD;
//result = 1.22