美文网首页
不要被表面现象所迷惑

不要被表面现象所迷惑

作者: 程屁凹 | 来源:发表于2016-12-07 00:22 被阅读0次

关于Java里面String类型长度的问题,之前一直存在一个错误的理解,那就是控制台没有输出完,不代表String类型装不下那么多数据。

按照我的猜测,在控制台里输出,比如在安卓开发中使用Log.i输出,控制台缓冲大小是有限制的,也就是说,一个长字符串在控制台输出被截断。存在两种可能,一是字符串真的炸了。而是控制台缓冲区炸了。

为了验证这个问题,我将一个从服务器返回的Json字符串使用Log.i直接输出到控制台中,大小被截断了,和在浏览器上返回的结果差距甚远。难道是控制台单行缓冲区不够?好吧,我生气了啊!我将这个超长字符串做分割处理,超长是多长?下一段肯定会讲到的!怎么分割呢?我利用String.substring方法,把字符串分割成单个长度为50的子段,然后再一个一个的输出,我也不知道有多长!!!然后我去,程序依然炸了,连个异常都没有抓到!现在我的猜测是我用来截断的变量是int,可能那个字符串的长度超过int的表示范围了,当然这只是猜测,还没有用其他类型进行进一步验证。好吧,在控制台输出算是失败了!!!!

文件流来一波试一下!File file = new File("test.txt")。新建一个对象很有必要的啊,毕竟我没女朋友。当然,在安卓开发里面,存取文件要复杂一下,没有PC上那么单纯。好了,这又不是重点,能保存就行了。接着,重点来了!我获取了一个这个文件相关的PrintWriter对象。具体方法PrintWriter writer = new PrintWriter(file)。接着,这个很关键啊,很能说明我对字符串的偏见。我将那个从服务器返回的东东直接塞进一个字符串,然后把这个字符串用writer直接添加到文件里面,方法如下writer.append(s),这个s就是那个不知道炸没有炸的字符串。接着writer.flush(),writer.close()。刷新缓冲区,关闭writer。激动人心的一刻来了,文件夹下有测试文件了。看一下大小,32KB。哦豁,有点大也!点开一看,和浏览器返回的结果一模一样啊!妈的智障!

说明了什么,控制台就是智障,它输出不了的工具。不代表String装不下!!!被骗了吧,什么控制台!!!!!!

好了,写完收工!每天把问题和辛苦历程记下来,这个是规矩,不能破哟,坚持下去!

0:22

相关文章

  • 不要被表面现象所迷惑

    关于Java里面String类型长度的问题,之前一直存在一个错误的理解,那就是控制台没有输出完,不代表String...

  • 不要被表面现象所迷惑

    今日回家,步行至地铁站。 虽说有点累,但还是喜欢在华灯初上的夜晚,吹着凉风在路上走走。感受着下班后的轻松,顺道欣赏...

  • 不要被事物的表面现象所迷惑

    原文秋至满山多秀色,春来无处不花香,凡人不可貌相,海水不可斗量。 译文秋天到时,满山一片秀丽之色,春天来临时,到处...

  • 不要被表面现象迷惑

    表面看来,说实话似乎比说谎困难一些,尤其是有些场合,你若说了实话,会令对方不舒服,甚至讨厌你。所以,我们习惯了顺口...

  • 写给自己-毕业十年

    书上的观点,改变了我的很多很多的想法。 要学会看动机和目的,不要被表面现象所迷惑。 看透不说透,才是成熟的人。 说...

  • 麦肯锡顾问的13条原则

    1、不要被表面现象所迷惑 病人走进办公室,对医生说自己得了流感。他会告诉医生自己的症状:喉咙沙哑、头疼、流鼻涕。医...

  • 《麦肯锡方法》内容梳理(二)

    第2章探索分析问题的方法。 1.不要被表面现象所迷惑。要想理清你接触的问题是否是真正的问题,唯一的方法就是深入探究...

  • 2018-10-29

    探索分析问题的方法 1.不要被表面现象所迷惑:先确定接到的问题是对的,它或许不是你要解决的那个问题 2.利用前辈...

  • 东郭先生

    东郭先生 历史常常告诉我们,不要被表面现象所迷惑,要看到事物的本质,那就是狼总是要吃人的。样板戏《奇袭白虎团》严伟...

  • 第二章——探索分析问题的方法

    不要被 表面现象所迷惑,有时候一个商业问题落在案头,要由你来解决它。问题相当清楚,但是你急于从四面八方展开行动时,...

网友评论

      本文标题:不要被表面现象所迷惑

      本文链接:https://www.haomeiwen.com/subject/ichdmttx.html