我正在想办法 印制 四则运算结果 单行 键入 只有一个 System.out.println
(我想少打点字对码农来说是比较好的)。
预期的输出。
43
1
19
13
我的代码。
class JavaApplication1 {
public static void main(String[] args) {
int a,b,c,d;
a = -5 + 8 * 6;
b = (55+9) % 9;
c = 20 + -3*5 / 8;
d = 5 + 15 / 3 * 2 - 8 % 3 ;
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
}
}
你可以用几种方法来实现i。
这将打印变量,并且在每个变量之间用 new-line char
:
System.out.println(a + "\n" + b + "\n" + c + "\n" + d);
您也可以使用方法参考和 Arrays
这将从你的4个变量组成的数组中创建一个动态列表,并应用 System.out::println
给每一个人 。
Arrays.asList(a,b,c,d).forEach(System.out::println);
或
IntStream.of(a,b,c,d).forEach(System.out::println);
使用基本 for each loop
也可以是一种方式 。
for (int i : new int[]{a, b, c, d})
System.out.println(i);
打印与 format
也可以用.NET来创建新行。
System.out.printf("%d%n%d%n%d%n%d%n",a,b,c,d)
你可以在Java中使用'\n'来创建一个新行,所以你的代码看起来像这样。
System.out.println(a + "\n" + b + "\n" + c + "\n" + d);
这将在新的行上打印它们。
将4个整数的结果分别打印在不同的行上,键入 仅有一次 'system.out.println'。
很简单,你只需要添加一个 换行字 到您要打印的文本。在大多数机器上,这是由特殊字符 \n
.
String output = a + "\n"
+ b + "\n"
+ c + "\n"
+ d;
System.out.println(output);
然而,有 平台独立 办法 System.lineSeparator()
(文件)返回。像。
String lineSeparator = System.lineSeparator();
String output = a + lineSeparator
+ b + lineSeparator
+ c + lineSeparator
+ d;
System.out.println(output);
或者你也可以用 System.out.printf
方法 (文件),代表着"打印格式化". 它的参数是 %n
创建一个新行,同样使用 System.lineSeparator()
内部。
System.out.printf("%d%n%d%n%d%n%d%n", a, b, c, d);
的 %d
是一个数字的占位符,如 int
. 它用后面列出的参数替换所有占位符。
这里是该方法接受的所有参数的完整列表。Formatter-Syntax
如果你想找一个 爪哇8 使用Streams和Lambdas的解决方案,那么你可以使用这段代码(文件):
IntStream.of(a, b, c, d).forEachOrdered(System.out::println);
它首先创建一个 溪流 (在这种情况下,像一个容器一样的东西)保存你的变量,然后调用 打印法 在每个 的元素。请注意,代码本身调用了 打印法 现在 4次, 不 只是 一次. 但它看起来相当紧凑。
你可以查看它"相当"到下面的代码。
int[] values = new int[]{a, b, c, d};
for (int value : values) {
System.out.println(value);
}
用 System.out.format
你可以使用以下命令输出与系统相关的分线符 %n
格式;你也可以在格式字符串中添加进一步的数字格式。
System.out.format("%d%n%d%n%d%n%d%n", a, b, c, d);
不要只用 "\n"
是一个换行字符。这取决于平台,如果你看一下包含以 "\n"
在Windows记事本上,你不会看到你所期望的东西。
请用这个来代替。
System.out.printf("%s%n%s%n%s%n%s%n", a, b, c, d);
或者:
IntStream.of(a, b, c, d).forEach(System.out::println);
你会想使用换行符。在java中,它是 \n
如果要用你所拥有的东西来打印它们,那就是。
System.out.println(a + "\n" + b + "\n" + c + "\n" + d);
这就满足了你所说的要求,只需调用一次... System.out.println
使用独立于平台的行分隔符,并避免重复输入相同的连接操作。
System.out.println(IntStream.of(a,b,c,d).mapToObj(Integer::toString)
.collect(Collectors.joining(System.lineSeparator())));
这是一个更通用的版本,它适用于任何对象,而不仅仅是ints。
System.out.println(Stream.of(a,b,c,d).map(Object::toString)
.collect(Collectors.joining(System.lineSeparator())));
你也可以选择使用 System.out.printf("%d%n%d%n%d%n%d%n",a,b,c,d)
在java中,有不同的打印语句
1.println
System.out.println(1+"\n"+2+"\n"+3+"\n"+4);
2.打印
System.out.print("\n"+1);
System.out.print("\n"+2);
System.out.print("\n"+3);
System.out.print("\n"+4);
3.printf
System.out.printf("%d%n%d%n%d%n%d%n",1,2,3,4);
其中%d和%n称为格式指定符,它们指定了在printf方法中使用的数据类型。