如何正确调整此代码中的数字?

时间:2012-07-01 20:15:41

标签: java

如何正确调整代码中的数字? 我应该插入System.out.printf()以及如何使用它? 另外我如何调整数字呢?

public class JTROLL
{
    public static void main(String[] Theory)
    {
        int k,i,j;

        System.out.print("The numbers are:"                                                );
        for (k = 0; k < 50; k++)
        {
            for ( i = k; i < 50; i++)
            {
                for ( j = i; j < 50; j++)
                {
                    if ( (k+1)*(k+1) + (i+1)*(i+1) == (j+1)*(j+1)                          )
                    {
                        System.out.println( "\n\t\t  " + (k+1) + ", "
                                                       + (i+1) + ", "
                                                       + (j+1)           );
                    }
                }
            }
        }
    }
}

3 个答案:

答案 0 :(得分:2)

以下应该按照您的预期进行操作。

import java.util.Formatter;

final public class Main
{    
    public static void main(String[] args)
    {
        Formatter fmt = new Formatter();
        fmt.format("|%10.2f|", 123.123);
        System.out.println(fmt);

        fmt = new Formatter();
        fmt.format("|%10.2f|", 1.13);
        System.out.println(fmt);

        fmt = new Formatter();
        fmt.format("|%10.2f|", 152123.16777);
        System.out.println(fmt);

        fmt = new Formatter();
        fmt.format("|%10.2f|", 99.777);
        System.out.println(fmt);
    }
}

您可能需要修改它以适合您的格式。


它在控制台上生成以下输出。

|    123.12|
|      1.13|
| 152123.17|
|     99.78|

答案 1 :(得分:0)

  1. 将您的数字和“,”分隔符附加到StringBuilder。
  2. 查找StringBuilder的长度。
  3. 计算转移数字所需的权利。
  4. 将适当数量的空格放入String。
  5. println(spacerString + myStringBuilder.toString());

答案 2 :(得分:0)

http://docs.oracle.com/javase/tutorial/java/data/numberformat.html上有很多关于格式的示例和解释。要正确调整整数,请使用以下内容:

System.out.println("The numbers are:");
for (k = 0; k < 50; k++) {
    for (i = k; i < 50; i++) {
        for (j = i; j < 50; j++) {
            if ((k + 1) * (k + 1) + (i + 1) * (i + 1) == (j + 1) * (j + 1)) {
                System.out.format("\t\t%3d,%3d,%3d%n", (k + 1), (i + 1), (j + 1));
            }
        }
    }
}