如何在println中打印两个静态变量值-语句

时间:2018-06-25 11:18:23

标签: java variables println

我想使用'extend function'扩展denum和num的值,它会自动更改为静态变量,我不知道为什么,但是它可以工作,但是问题出在我尝试获取输出时,我在System.out.println-语句中只能有一个变量,一次不能两个都可以,为什么?

public class Erste_Klasse {
static int denum = 14;
static int num = 13;

public static void extend(int n) {
    denum += n;
    num +=n;
}

public static void main(String[] args){
    extend(14);
    System.out.println(num);
}
}

3 个答案:

答案 0 :(得分:2)

你说

  

它自动更改为静态变量,我不知道为什么

我将假定您的IDE提出了建议。建议这样做是因为您正尝试从静态方法public static void extend(int n)访问它,因为您只能从静态方法访问静态成员。

  

我在System.out.println-语句中只能有一个变量

如果要打印两个不同的变量,可以用String隔开,例如:

System.out.println(num +"---"+ denum );

答案 1 :(得分:2)

println采用一个(字符串)参数。由于Java编译器确实具有某些语法处理功能,因此会将System.out.println(num)转换为System.out.println(String.valueOf(num))

如果要显示更多值,可以通过串联字符串值e,g来实现:

System.out.println(num + " " + denum);

或者您可以使用printf变体:

System.out.printf("Num:%d denum:%d%n", num, denum);

其中%d表示int,而%n表示“特定于平台的换行符”。

答案 2 :(得分:0)

您必须这样做:

System.out.println(num + denum); 

但这实际上将数字相加,然后输出单个输出。 您应该这样做:

System.out.println(num +","+ denum);