java的equals字符串返回false

問題敘述

今天寫java作業的時候遇到了一個靈異事件,沒錯,就是靈異事件,明明兩個字符串(中文)是完全一樣的,在控制檯輸出也是一樣的,可調用equals方法就是返回false
不過值得一提的是,兩個字符串是從兩個不同的文件讀出來的,但是字符串編碼都一樣,都是“utf-8”,
那麼問題到底在哪呢?

問題原因

後來分析,問題原因可能是其中一個文件的字符串是那個文件的第一行,另一個字符串是中間的一行,那個第一行字符串因爲位於文件首部,所以第一個字符可能帶有“不乾淨的東西”

問題解決

在文件首部隨便添加一個字符佔位,然後在讀文件的時候再把佔位字符去掉,竟然奇蹟般的可以了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章