System.out.printf不打印整数参数

2 java string-formatting

我是java编程的新手,我在从另一个类返回一个方法时遇到了麻烦.这两个类都成功编译和运行.我可以从其中一个类调用一个简单的int,但是当我想计算用户输入的两个输入整数时,我只得到一个空格.

这是我的计算课

class calculations {
    public final int AGE = 53;
    public int numbers(int num1, int num2) {
        return num1 + num2;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的用户类.我可以获取AGE要打印的变量,但该numbers()方法不返回值.这只是一个空白区域.

import java.util.Scanner;
class user {
    static Scanner input = new Scanner(System.in);

    public static void main(String args[]) {    
        int i1, i2;

        System.out.println("Enter int1: ");
        i1 = input.nextInt();

        System.out.println("Enter int2: ");
        i2 = input.nextInt();

        calculations kjc = new calculations();

        System.out.printf("Age = " + kjc.AGE);

        System.out.printf("\nints: " , i1, i2, kjc.numbers(i1, i2));

    }
}
Run Code Online (Sandbox Code Playgroud)

如果有人能解释为什么System.out.printf("\nints: " , i1, i2, kjc.numbers(i1, i2));不打印出两个输入整数的计算.

Jam*_*zba 5

您正在使用printf,但您没有格式说明符.

试试这个

 System.out.printf("\nints: %d, %d, %d" , i1, i2, kjc.numbers ( i1,i2 ));
Run Code Online (Sandbox Code Playgroud)

基本上,第一个字符串之后的每个参数都按顺序匹配到每个格式说明符.%d是十进制整数的格式说明符