本帖最后由 xuemeng 于 2013-5-14 17:05 编辑
System.out.println(0);这代码和System.out.println(“0”); 关于这句代码,其实你没必要深究, 因为等你学到IO之后你就明白了, 不过你既然问了我就解释一下把
System.out, 标准输出流, 它返回的是一个PrintStream 类型的对象, 而该对象 有一个方法名为println的重载方法,
System.out.println(0),其实就是PrintStream类型的对象调用 void println(int x)的方法 这个代码可以这样拆分 PrintStream p = System.out; p.println(0);
System.out.println("0), 其实是PrintStream类型的对象调用 void println(String x)的方法 这个代可以这样拆分 PrintStream p = System.out; p.println("0");
System.out.println("a="+x), 这个是正确的, 为什么呢? 就目前来讲,你可以记个死的, 这个就是java语法规定的, 其实细究起来, 和上面一样 "a=" + x 其中 "a="是字符串, 在java中, "+" 在这里表示连接符, 在java中任何类型的数据和 String连接起来, 都会变成String类型, 而通过上面的分析 System.out返回的是一个PrintStream类型的对象, 该对象的println方法 其中一个就包含了 一个参数类型为string的方法, 所以也就是说, 你给println(String x)方法传递了一个String类型的参数, 那么当然正确啊!!
System.out.println("a="x) 这个是错的, println其实是一个方法, 既然是一个方法,那么我们肯定要传递参数进去, "a="x, 这个是什么类型的参数呢?? java中没有这种类型的变量吧, 所以就是错的, 而且就算如果真有, 也还要考虑是否有println()方法中是否有形参为这种类型的参数的方法!! |