更新時間:2020-08-18 16:09:25 來源:動力節點 瀏覽2385次
要求:
編寫一個截取字符串的函數,輸入為一個字符串和字節數,輸出為按字節截取的字符串。但是要保證漢字不被截半個,如“我ABC”4,應該截為“我AB”,輸入“我ABC漢DEF”,6,應該輸出為“我ABC”而不是“我ABC+漢的半個
基本知識:
先了解下基本的單位:
1、比特(bit)即一個二進制位,例如100011就是6比特。
2、字節(byte),這是計算機中數據類型最基本的單位了,8bit組成1byte。
java要確定每種基本類型所占存儲空間的大小,它們的大小并不像其它大多數語言那么隨機器硬件架構的變化而變化。這種所占存存儲空間大小的不變性是java程序具有可移值性的原因之一。
java中的boolean長度是1個字節,實際上它只有1bit在起作用,其它的全部是0.
java的中基本類型數據的大小如下:
boolean 1-byte(實際上就是1bit在起作用)
char 2-bytes
byte 1-byte
short 2-bytes
int 4-bytes
long 8-bytes
float 4-bytes
double 8-bytes
一個英文字母、或一個漢字都是1個Unicode代碼單元,Unicode目前普遍采用的是UCS-2,它用兩個字節來編碼一個字符,一個字符在Unicode中就是一個代碼單元。
public?String?splitString(String?src,?int?size){
????????String?result?=?new?String(src.getBytes(),?0,?size);
????????if(!src.startsWith(result)){
????????????result?=?new?String(src.getBytes(),?0,?size-1);
????????}
????????return?result;
????}
在這里要注意的是,如果用Eclipse編寫測試程序,注意把文本編碼設置成GBK,否則得到的結果可能有所不同。
以上就是動力節點java培訓機構的小編針對“Java截取字符串的面試題”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習