console.writeline
和之间的技术区别到底是什么System.out.println
?我知道这会System.out.println
写入标准输出,但这与控制台不同吗?
我不完全理解的文档进行console.writeline
。
以下是使用System.out
/
.err
/.in
和之间的主要区别System.console()
:
System.console()
如果您的应用程序未在终端中运行,则返回null(尽管您可以在应用程序中处理此问题)System.console()
提供读取密码而不回显字符的方法System.out
并System.err
使用默认平台编码,而Console
类输出方法使用控制台编码后一种行为可能不会立即显而易见,但是像这样的代码可以证明区别:
public class ConsoleDemo {
public static void main(String[] args) {
String[] data = { "\u250C\u2500\u2500\u2500\u2500\u2500\u2510",
"\u2502Hello\u2502",
"\u2514\u2500\u2500\u2500\u2500\u2500\u2518" };
for (String s : data) {
System.out.println(s);
}
for (String s : data) {
System.console().writer().println(s);
}
}
}
在我的Windows XP(系统编码为Windows-1252,默认控制台编码为IBM850)上,该代码将写为:
???????
?Hello?
???????
┌─────┐
│Hello│
└─────┘
请注意,此行为取决于将控制台编码设置为与系统编码不同的编码。由于多种历史原因,这是Windows上的默认行为。
问题内容: 关于它们有很多传说。我想知道真相。以下两个示例之间有什么区别? 问题答案: 不确定从何处获得传说,但: 提交按钮 与: IE6将在标记之间提交此按钮的所有文本,其他浏览器将仅提交值。使用可使您在按钮的设计上享有更大的布局自由度。从各种意图和目的看,它乍一看似乎很棒,但是各种浏览器怪癖使它有时很难使用。 在您的示例中,IE6将发送到服务器,而其他大多数浏览器将不发送任何内容。要使其跨浏览
什么区别以及如何正确重写代码?
问题内容: 我想修改输出的输出。这怎么可能?可能-我已经在Bukkit / Craftbukkit中看到了。如果插件正在使用System.out.println(String string)打印字符串;Bukkit将时间/日期和记录状态添加到字符串中。我想像Bukkit一样。 问题答案: 您可以更改用作标准输出的: System.setOut(PrintStream输出) 创建您自己的实现,该实现
我试图理解为什么下面两个代码块会产生不同的结果。 代码块1按预期工作,并返回从数据库中查找的提供程序的数组。另一方面,代码块2返回函数数组。在理解promissione.all()和async/await时,我觉得缺少了一些简单的东西。 代码块的差异如下: > 块1:创建许诺函数数组,然后使用map运算符将其包装在异步函数中。 块2:许诺函数的数组被创建为异步函数。因此,不调用map运算符。 如果
问题内容: 我才刚刚开始研究SQL。 我有一个SQL Server 2008r2数据库,它将返回两个字段DocDate和InvValue。我需要将InvValues汇总为今天的MTD和YTD,所以看起来像 我已经做了大量的Google搜寻,并且可以使用SUM&DATEPART进行一项或多项,但是我坚持尝试两者兼而有之。 有人可以给我一些伪代码,以帮助我进一步谷歌。 谢谢@戈登·利诺夫(Gordon
这个示例代码来自一本Java书籍,从墙上的99瓶啤酒到没有啤酒打印出这首歌。问题是,当墙上是1瓶啤酒时,它仍然写着瓶子。我试图通过在末尾添加部分来解决这个问题。但是,它仍然显示1瓶啤酒在墙上,我瓶啤酒在墙上。 我不知道该改变什么来解决这个问题。是否创建另一个while部分? 如果你能给他们一个提示,这样我就可以自己解决它,那也很酷!因为我知道我的实际歌曲输出是在第一个if部分,但我不知道我应该在哪