日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

java 字节 字符,java:字节和字符

發布時間:2025/3/19 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 字节 字符,java:字节和字符 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

記錄并分享下自己學習時的小插曲。

事情起源:java基礎太次了,就打算,重新學一遍,再做做題。于是乎就碰見了這么道題:編寫一個截取字符串的函數,輸入為一個字符串和字節數,輸出為按字節截取的字符串。但是要保證漢字不被截半個,如"我ABC"4,應該截為"我AB",輸入"我ABC漢DEF",6,應該輸出為"我ABC"而不是"我ABC+漢的半個"。我就寫了如下所示:

于是乎,我慌了。不應該是我AB的嘛,B呢?!!。然后又挨個試了“我”和“A”

寶寶慌了,在我認知里,中文不是2個字節,數字和英文占1個字節的嘛。。這神馬鬼!~

于是乎翻書+問度娘,結果就是:貌似是不同的編碼造成的。

然后就轉碼測試了下,發現漢字對于gbk的話是2個,utf-8的話是3個,utf-16的話是4個。這個就不上圖了,后續給個gitHub的地址,如果有小伙伴對測試過程有興趣的話可以看看。

然后根據這個就想到了char。接著,做了下char的測試。因為一開始大一學C語言的時候,我記得char是1個字節。結果控制臺輸出的是:2個字節。后來翻看了java核心技術卷一這本書,說:在java中,char數據類型是一個采用UTF-16編碼表示Unicode碼點的代碼單元。java為了在不同機器上運行,忽視機器自身處理器位數,內部做的統一處理。所以說對于java來說,char占2個字節。

原來這道編程題編寫的的隱藏條件是得用GBK或者其他占2字節的編碼表示才能出正確結果,這是真正考察的重點。還是太年輕了。

這個記錄一下,努力打好基礎,爭取早日從小白變成菜鳥!!

總結

以上是生活随笔為你收集整理的java 字节 字符,java:字节和字符的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。