关于java的println和print的区别,这个语句里面 如果加了ln跟没加相比不是换行那么简单,为什么?

inti,j;for(i=1;i<=9;i++){for(j=1;j<=9;j++)System.out.print(i+"*"+j+"="+(i*j)+"\t");Sy... int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
System.out.print(i+"*"+j+"="+(i*j)+"\t");
System.out.print("\n");
我的错,看错一个东西,不好意思各位,谢谢,非常感谢
展开
 我来答
泪reni
推荐于2019-11-09 · TA获得超过2485个赞
知道答主
回答量:15
采纳率:0%
帮助的人:2097
展开全部

概述

print和println的区别只是一个换行

解析

print将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。

println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。

print("test\n")同等于println("test")

这里贴出print和println的源码:

一、print源码:

二、println源码:

可以看出源码中,println相对于print就只是多了一个newLine()方法调用并且把println方法设置了线程同步锁,而newline方法则是换行输出则同等于"\n",而线程同步锁则是为了保证println内部调用print不会出现异步输出而造成的输出内容 错误。

拓展内容

除了所提问的print和println,java还有一种继承自c的输出方式---printf

print,println,printf的区别:

print将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。

println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始

printf是格式化输出的形式。

#code:

#out:

printf主要是继承了C语言的printf的一些特性,可以进行格式化输出

print就是一般的标准输出,但是不换行

println和print基本没什么差别,就是最后会换行

println("test")相当于print("test\n")就是一般的输出字符串

printf 格式输出参数详解:

'd' 整数 结果被格式化为十进制整数
'o' 整数 结果被格式化为八进制整数
'x', 'X' 整数 结果被格式化为十六进制整数
'e', 'E' 浮点 结果被格式化为用计算机科学记数法表示的十进制数
'f' 浮点 结果被格式化为十进制数
'g', 'G' 浮点 根据精度和舍入运算后的值,使用计算机科学记数形式或十进制格式对结果进行格式化。
'a', 'A' 浮点 结果被格式化为带有效位数和指数的十六进制浮点数

我是黄黄你是谁
推荐于2019-11-17 · TA获得超过6192个赞
知道答主
回答量:26
采纳率:0%
帮助的人:1.9万
展开全部

print就是一般的标准输出,但是不换行

println和print基本没什么差别,就是最后会换行

println("test")相当于print("test\n")就是一般的输出字符串

print\println的区别

print将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。

println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。

下在举个例子:

package other;

public class TestPrint {

public static voidmain(String[] args) {

int i = 4;

double j = 5;

System.out.print("用print输出i:"+ i);

System.out.println( "用println输出i:"+ i);

System.out.printf("i的值为%d,j的值为%f", i,j);

}

}

运行结果为

用print输出i:4用println输出i:4

i的值为4,j的值为5.000000

可以看到,用print输出i后,没有换行,用println输出的结果直接在print输出语句后面,而输出println后换行了。

扩展资料

printf和print、println的区别:

printf主要是继承了C语言的printf的一些特性,可以进行格式化输出

System.out.printf("the number is: d",t);
参照JAVA API的定义如下:
'd' 整数结果被格式化为十进制整数
'o' 整数结果被格式化为八进制整数
'x', 'X' 整数结果被格式化为十六进制整数
'e', 'E' 浮点结果被格式化为用计算机科学记数法表示的十进制数
'f' 浮点结果被格式化为十进制数
'g', 'G' 浮点根据精度和舍入运算后的值,使用计算机科学记数形式或十进制格式对结果进行格式化。
'a', 'A' 浮点结果被格式化为带有效位数和指数的十六进制浮点数

参考资料:java_百度百科

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Polyphylla1022
2011-09-30 · TA获得超过705个赞
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:151万
展开全部
println打印的时候自带了换行,下一次在打印的时候从下一行开始打印。
print不换行,下次打印的时候在这次打印的东西后面直接打印。
没什么很大区别,看你的需求了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友93a4c33
推荐于2017-11-24 · TA获得超过1496个赞
知道大有可为答主
回答量:1516
采纳率:0%
帮助的人:1317万
展开全部
println跟print的区别就是换行和不换行的区别。
至于你上面的语句,你要注意循环的位置,以及"\t","\n"的意义!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AiDirac
2011-09-30 · TA获得超过6784个赞
知道大有可为答主
回答量:8833
采纳率:33%
帮助的人:1亿
展开全部
print的源码
public void print(String s) {
if (s == null) {
s = "null";
}
write(s);
}
println的源码.
public void println(String x) {
synchronized (this) {
print(x);
newLine();
}
}
println只比print多了一个newLine();而已.
就这么简单.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式