看板java
标 题Re: [问题] print char[]问题
发信站SayYA 资讯站 (Sat Mar 10 11:58:07 2007)
转信站ptt!ctu-reader!news.nctu!SayYa
※ 引述《[email protected] (我要买车啦)》之铭言:
> 不知道你的意思是不是这样
> 我归纳一下(在笔记本上TRY的)
> print会把传入的参数每个形态都调整成同样型态
> 依照原本我的程式码
> 如果改成
> System.out.print("str1=");
> System.out.println(str1);
> 这样就是
> str1=My String
> 但是合起来System.out.println("str1="+str1);
> 两个type不同
> 就是上面说的
> 会调整str1的型态
[-----------------]
字串的「加法」会结合 2 个字串
如果运算的东西不是字串时,会呼叫 toString() 方法
char[] 是一个物件,所以他当然会有 toString()
这是来自物件之母/父的 Object 所拥有的 toString()
> 从 char [] = > String
至於第 2 行的
str1=My String 会成功,并不是您真的印了「字串」
http://java.sun.com/j2se/1.4.2/docs/api/java/io/PrintStream.html
#println(char[])
你只是呼叫了其中一个 print 可以填入 char[] 的方法罢了
> 她就只认得str1的起始位置
> 所以就输出str1的起始位置
依之前的文章看,也许您学习过 c 语言
所以要提醒您在 java 中,
字串是由 String 所建立,
或是以 "" 包起来的才叫字串
不再是以一串 char[] 并含有 '\0' 者为字串
> 不知道我想的是否正确
> 请指教(抱歉 占用这麽多版面跟文章)
有问题就问,
您也没有使用不礼貌的问法,
不用觉得抱歉 :)
--
※ Origin: SayYA 资讯站 <bbs.sayya.org>
◆ From: 218-161-127-199.dynamic.hinet.net