关于System.out.println

本文深入探讨了Java中的System.out.println()方法的使用,解释了其如何处理不同数据类型,并通过实例展示了如何直接打印数组和字符串等对象。重点介绍了System类和PrintStream类的相关知识,以及toString()和println()方法的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于System.out.println
来源:中国自学编程网   发布日期:2008-11-28  
学习java已经有一段时间了,这段时间里感觉到了java的博大精深,同时也是产生了不少的疑惑。 

学习java的时候产生的第一个疑惑是关于System.out.println()的,自己不知道这个方法究竟可以输出什么类型的数据。我试过每一种基本数据类型,发现都可以输出。后来有一次在学习数组的时候老师介绍了一种逐个打印出数组元素的方法,是采用了循环的方法;当时心里就想:为什么不直接用System.out.println()打印出来呢?课后自己试了一下: 

int[] bb = {1,2,3,4,5}; 
System.out.println (bb); 
在一个main方法中实现这两条语句后得到的结果是: 
[I@1fb8ee3 
心里很不明白为什么是这个结果,当时也看不懂这个结果,以为这是个乱码。 
后来我看了API的帮助文档中关于System类的介绍,其中有: 
System 
static PrintStream out 
“标准”输出流。 

以下是关于System.out的详细介绍: 
out 
public static final PrintStream out“标准”输出流。此流已打开并准备接受输出数据。通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标。 

对于简单独立的 Java 应用程序,编写一行输出数据的典型方式是: 
System.out.println(data) 
请参阅 PrintStream 类中的 println 方法。 

于是又找到文档中关于PrintStream 的介绍,其中有这么一句 
void println(Object x) 
打印 Object,然后终止该行。 

详细介绍是: 
println 
public void println(Object x)打印 Object,然后终止该行。此方法的行为就像先调用 print(Object) 然后调用 println() 一样。 
参数: 
x - 要打印的 Object。 
看来System.out.println()是可以直接打印对象类型的,但是自己在打印int[] bb时得到的却不是数组的元素呢........ 
记得老师还说过一个toString()方法,可以返回对象的字符串表示形式,在Object类的介绍中又看到这样一条: 
toString 
public String toString()返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂。建议所有子类都重写此方法。 
Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于: 
getClass().getName() + '@' + Integer.toHexString(hashCode()) 
返回: 
该对象的字符串表示形式。 
难道将一个对象作为System.out.println()的参数时输出 
的结果就是跟这个方法有关? 
另外在类 PrintStream中还看到这样一个方法: 
void println(char[] x) 
打印字符数组,然后终止该行。 

System.out.println()可以直接打印字符数组? 
char[] charArray={'a','b','c','d','e'}; 
System.out.println (charArray); 
试了一下果然可以直接输出!

class  printArray
{
	public static void main(String[] args) 
	{
		int[] bb = {1,2,3,4,5}; 
		System.out.println(bb); //[I@15093f1
		char[] charArray={'a','b','c','d','e'}; 
		System.out.println (charArray); //abcde

		System.out.println("Hello World!");
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值