java的字元
A. java啥是字元型
字元型char 是存一個字元變數的類型,字元變數用' '概括表示,中間填入任意一個字元(也叫符號),例如'a' 'b' 'c' 之類。
多個字元可以拼接成一個字元串string,例如"hello world"。
以上兩個都是字元,是符號,僅顯示用,不能同數學一樣參與計算,字元可以剪切或者粘貼到一個字元串中,可以判斷是否一樣的邏輯。
B. java採用什麼字元集
Java語言所使用的字元集是16位Unicode編碼。另外再介紹一些常見的字元集:
1、最早在dos下寫pascal的時候,就遇到ASCII字元集,後來還是dos下寫c,也是ascii字元集
特點:目前最通用的單位元組編碼字元集
表示:單位元組
最早ascii用7bit表示,總共能表示2^7=128個字元,後來擴展到8bit,就表示2^8=256個字元
2、GB2312又稱為GB2312-80字元集,全稱為《信息交換用漢字編碼字元集·基本集》,由原中國國家標准總局發布,1981年5月1日實施。
特點:當然是能表示99%的中國漢字,還包括拉丁字母、日文假名、希臘字母、俄文字母、漢語拼音符號、漢語注音字母等
表示:雙位元組
3、GBK是漢字編碼標准之一,全稱《漢字內碼擴展規范》,GBK 向下與GB2312編碼兼容,向上支持ISO10646.1國際標准。可以認為GBK是在GB2313基礎上通過內碼擴展出來的一個標准。
特點:完全兼容GB2312標准,支持國際標准ISO/IEC10646-1和國家標准GB13000-1中的全部中日韓漢字,並包含了BIG5編碼中的所有漢字
表示:雙位元組
4、Big5,台灣那邊使用比較多。
5、GB 18030,全稱是GB18030-2000《信息交換用漢字編碼字元集基本集的擴充》,是我國政府於2000年3月17日發布的新的漢字編碼國家標准,2001年8月31日後在中國市場上發布的軟體必須符合本標准。
特點:就是強大。覆蓋中文、日文、朝鮮語和中國少數民族文字。滿足中國大陸、香港、台灣、日本和韓國等東亞地區信息交換多文種、大字量、多用途、統一編碼格式的要求。並且與Unicode 3.0版本兼容,填補Unicode擴展字元字匯「統一漢字擴展A」的內容。並且與以前的國家字元編碼標准(GB2312,GB13000.1)兼容。
表示:單位元組、雙位元組、四位元組三種方式
6、Unicode野心更大(當然有一個國際統一標准當然是好事)
特點:Unicode是一種在計算機上使用的字元編碼。它為每種語言中的每個字元設定了統一並且唯一的二進制編碼,以滿足跨語言、跨平台進行文本轉換、處理的要求。
表示:utf-8,utf-16,utf-32
這里可能有點不好理解,舉個例子
首先,把unicode理解成對所有字元做了一個統一的編號,比如:「字」這個字元,編號是23383,這個是unicode定義的
但是,在計算機中,如何存儲這個編號呢?方式就有很多,存儲unicode的方式,就是utf-8,utf-16,utf-32
23383數值的16進製表示:0x5b57
utf-8用3個位元組來表示漢字,所以utf-8的表示為:0xE5AD97
utf-16用2個位元組來表示漢字,所以utf-16的表示為:0x5b57 剛好和數值是一樣的
utf-32用4個位元組來表示漢字,所以utf-32的表示為:0x00005b57 和數值是一樣的,不過浪費空間
7、再來講講utf-8,它是一種變長的字元集
表示:單位元組來表示字母,雙位元組來表示一些希臘字母,三位元組來表示漢字,當然也有四位元組的
這么做當然會增加表示和識別的難度,不過,可以節省空間。這也是為什麼utf-8在網路編碼中流行的原因。
C. java中字元串的是什麼
java中的字元串是由多個字元組成的一串數據,字元串是常量,一旦被創建就不能改變,這是因為字元串的值是存放在方法區的常量池裡面,但是引用可以改變。字元串字面值"ab"也可以看成是一個字元串對象。
D. Java中字元集有哪些呢
字元集(character set)是一個系統支持的所有抽象字元的集合。字元(character)就是各種文字和符號,包括國家文字、標點符號、圖形符號、數字等。
如果僅僅是抽象的字元集,其實是顧名思義的,但是我們常說的字元集,其實是指編碼字元集(coded character set),比如: Unicode、ASCII、GB2312、GBK等等。什麼是編碼字元集呢?編碼字元集是指,這個字元集里的每一個字元,都對應到唯一的一個代碼值,這些代碼值叫做代碼點(code point),可以看做是這個字元在編碼字元集里的序號,字元在給定的編碼方式下的二進制比特序列稱為代碼單元(code unit)。在Unicode字元集中,字母A對應的數值是十六進制下的0041,書寫時前面加U+,所以Unicode里A的代碼點是U+0041。
常見的編碼字元集有:
Unicode:也叫統一字元集,它包含了幾乎世界上所有的已經發現且需要使用的字元(如中文、日文、英文、德文等)。
ASCII:早期的計算機系統只能處理英文,所以ASCII也就成為了計算機的預設字元集,包含了英文所需要的所有字元。
GB2312:中文字元集,包含ASCII字元集。ASCII部分用單位元組表示,剩餘部分用雙位元組表示。
GBK:GB2312的擴展,完整包含了GB2312的所有內容。
GB18030:GBK字元集的超集,常叫大漢字字元集,也叫CJK(Chinese,Japanese,Korea)字元集,包含了中、日、韓三國語言中的所有字元。
學習相關java類知識,推薦來北京尚學堂,優秀的師資和科學的授課方式,會帶給你完美的學習體驗。
E. java中的字元串代表什麼意思
字元串顧名思義就是一些字元組合在一起組成的一串數據,稱作字元串,在Java中字元串用雙引號包圍起來,格式為String string = 「hello world」; 這里的hello world就是一個字元串,字元串裡面可以包含任何的字元內容;
在Java中String是一個類,所以除了上面直接讓String對象等於一個字元串之外,我們可以向普通的類一樣,使用new創建一個String對象;
當我們使用第一種方法也就是String string = 」hello」;的時候,程序會在特定的內存中(專門保存字元串的內存)查找是否有」hello」這個字元串,如果沒有則在這個內存區域創建一個」hello」字元串,當我們再次創建另一個字元串String string2 = 「hello」;的時候,由於這個時候,這個內存區域已經有了」hello」這個字元串,所以我們string2就直接指向了」hello」這個地址;這個時候我們使用string == string2的時候,得到的結果是true;也就是說兩個指向值是相等的;
當我們使用new 的方式創建一個字元串對象的時候,我們查看String源碼,可以發現String類中是使用private final char value[];的變數來存放字元串的內容;當我們創建兩個字元串String string2 = new String(「hello」); String string3 = new String(「hello」);這個時候,我們使用string2 == string3的時候,得到的結果是false;這是由於new創建的對象會分別在內存中創建兩個地址,所以string2和string3不相等;但是我們使用string2.value == string3.value的時候,得到的結果是true;因為這兩個地址的字元串在內存中是指向的同一個地址的」hello」,並且和我們剛才創建的string所指向的」hello」地址一樣;所以我們一般比較字元串的時候,使用string2.equal(string3);的方式進行比較;
我們可以從下圖中看出來,雖然有四個String對象,但是他們的value值的地址都是一樣的;
Java中String類的構造方法非常的多,我們根據需求,將不同類型的數組轉換成我們想要的字元串;並且String中有我們用的比較多的一些方法,比如public boolean equalsIgnoreCase( String anotherString )表示忽略兩個字元串中字元的大小寫,比較兩個字元串是否相等;public boolean startsWith(String prefix, int toffset)表示從字元串第toffset的位置是否是由prefix開始的;public boolean endsWith(String suffix)判斷字元串是否是以suffix結束的,我們可以從源碼中看到,這個方法使用了startsWith(suffix, value.length - suffix.value.length)的方法;public String substring(int beginIndex)表示截取字元串從beginIndex開始以後的內容;public String substring(int beginIndex, int endIndex)表示截取字元串從beginIndex到endIndex位置的內容;
Java對字元串的封裝非常的強大,除了上述的常用方法之外,還有很多非常方便的方法;能夠熟練掌握String對我們的開發有非常大的幫助;
更多java學習方面的問題可以訪問這個網頁,網頁鏈接,希望我的回答能幫到你。
F. java中怎麼進行字元串替換
使用replace方法
該方法的作用是替換字元串中所有指定的字元,然後生成一個新的字元串,例如:
String s = 「abcat」;
String s1 = s.replace(『a』,『1』);
該代碼的作用是將字元串s中所有的字元a替換成字元1,生成的新字元串s1的值是「1bc1t」,而字元串s的內容不發生改變。如果需要將字元串中某個指定的字元串替換為其它字元串,則可以使用replaceAll方法,例如:
String s = 「abatbac」;
String s1 = s.replaceAll(「ba」,「12」);
該代碼的作用是將字元串s中所有的字元串「ab」替換為「12」,生成新的字元串「a12t12c」,而字元串s的內容也不發生改變。
字元串在存儲上類似字元數組
它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。
通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:
長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。
G. Java中怎麼輸入一個字元(用char來定義)
1.先創建一個scanner對象
2.調用scanner對象的next()方法獲取控制台輸入,返回的是一個string類型,因為沒有nextchar()方法
3.調用string的charat(0)方法獲取第一個字元
scanner
sc
=
new
scanner(system.in);
string
s
=
sc.next();
char
c
=
s.charat(0);