先讲个小故事, 虽然跟主题有点不太相关哈:
唐朝诗人李绅, 身为官员, 脾气暴躁, 瞧不起信教的, 尤其鄙视装逼之僧人, 动不动就对他们拳脚相加. 曾扬言: "我可以接见他们, 要能答出来还好, 要是答不出来, 我弄死他!" 有一回一个和尚来跟他宣传因果报应, 李绅问: "阿师从哪里来, 到哪里去呢?" 僧答: "贫僧从来处来, 到去处去." 李绅当时就急了, 撸起袖子, 亮出了手腕: "我去年买了个表!"
来自知乎问答"古人是如何「装逼」的? ", 略有改动.
String 到哪里去?
有了前面僧人的教训, 在这里就不故弄玄虚了, 应该说 String 的去处还是蛮确定的, 那就是到 byte[] 中去, 方式就是通过 getBytes
这一方法.
new String 与 getBytes
如果说 new String(byte[], encoding)
是从 byte[] 到 String 的过程, 那么 getBytes(encoding)
则正好与之相反: 它是从 String 到 byte[] 的过程.
或许我们应该说: 它从去处来, 又到来处去.