亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Java基礎筆記-String類

2019-11-15 00:20:00
字體:
來源:轉載
供稿:網友
java基礎筆記-String類

String 類(被final修飾)

字符串是一種特殊的對象,一旦字符串被初始化就不可以被改變了.(內容不變)

例如:

String s = “abc”;

String s1 = new String(“abc”);

s在內存中有一個對象, s代表的是一個類類型變量,”abc”是一個對象.

s1在內存中有兩個對象,分別是new出來的和: “abc” .

s == s1;的結果是false. 因為s和s1它們所對應的地址不同,比較的兩個地址,s和s1中存儲的地址數值是不同的.因此是false.

s.equals(s1);的結果則為true. equals是比較兩個對象的內容是否相同,

"=="和 equals 方法的區別:

==操作符專門用來比較兩個變量的值是否相等,也就是用于比較變量所對應的內存中所存儲的數值是否相同,要比較兩個基本類型的數據或兩個引用變量是否相等,只能用==操作

符.

如果一個變量指向的數據是對象類型的,這時候涉及了兩塊內存,對象本身占用一塊內存(堆內存),變量也占用一塊內存,在 Objet obj = new Object();變量 obj 是一個內存,new Object()是另一個內存,此時,變量 obj 所對應的內存中存儲的數值就是對象占用的那塊內存的首地址.對于指向對象類型的變量,如果要比較兩個變量是否指向同一個對象即要看這兩個變量所對應的內存中的數值是否相等,這時候就需要用==操作符進行比較.

equals 方法是用于比較兩個獨立對象的內容是否相同,它比較的兩個對象是獨立的.

String a=new String("abc");

String b=new String("abc");

兩條 new 語句創建了兩個對象,然后用 a和b 兩個變量分別指向了其中一個對象,這是兩個不同的對象,它們的首地址是不同的,即 a 和 b 中存儲的數值(地址值)是不相同的,所以,表達式 a==b 將返回 false,而這兩個對象中的內容是相同的,所以,表達式 a.equals(b)將返回true.

String類中復寫了Object類中的equals方法,用于判斷字符串是否相同.

參見代碼:StringDemo.java

 1 class StringDemo 2 { 3     public static void main(String args[]) 4     { 5         String s = "abc";  //s是一個類類型的變量."abc"是一個對象 6         String s1 = new String("abc"); //s1中有兩個對象.  7          8         //s和s1的區別:  9         // 在s中有一個對象"abc",一個類類型變量10         // 在s1中有兩個對象.分別是new出來的和"abc"11         12         System.out.PRintln(s==s1);  //輸出的結果為false13         System.out.println(s.equals(s1)); //輸出的結果為true.14         15     }16 }17 18     

String類中的常見方法操作.

1. 獲取操作.

1.1獲取字符串中字符個數,即獲取字符串的長度.

方法返回類型為: int length()

與數組中length的區別: 在數組中:用的是 .length 即用的是length的屬性.

在字符串中:用的是length() 即用的是length方法.

1.2 根據位置獲取字符串中的某個字符.

  方法返回類型為: char CharAt(int index =>角標) 參數中是想獲取字符的位置, 參數中輸入的是想獲取的字符的角標

1.3 根據字符獲取該字符在字符串中的位置.

方法1:

  返回值類型為: int indexOf(int ch =>想獲取的字符) 參數中輸入的是想獲取的字符的位置.

方法2:

  返回值類型為: int indexOf(int ch,fromIndex) 從fromIndex開始獲取.

  獲取字符串中字符串的位置: 返回類型:intint indexOf(int ch)

  獲取從fromIndex位置開始的字符串的位置:

  返回類型: int  方法:indexOf(int ch,fromIndex)

  反向索引一個字符串中字符的位置,

  lastIndexOf(int ch,fromIndex)

2. 判斷操作.

2.1 字符串中是否包含有某一個子串.

  返回類型:boolean 方法:contains(str);

  IndexOf(str)可以索引第一次出現的位置.如果返回-1.則說明沒有索引到,

  If(str.indexOf(“字符串”)!=-1) 該方法即可以判斷也可以獲取位置.

2.2 字符中是否有內容.

  返回類型: boolean 方法:isEmpty(); 判斷長度是否為空.

2.3 字符串是否以指定的內容開頭.

  返回類型:boolean 方法:startsWith(str);

2.4字符串是否以指定的內容結尾.

  返回類型:boolean 方法:endsWith(str);

2.5 判斷字符串的內容是否相同

  返回值類型:boolean equals(str);

2.6忽略大小寫判斷字符串是否相同.

  equalsIgnoreCase(str)

3. 轉換

3.1 將字符數組轉成字符串.

構造函數:String(char[])

String(char[],offset,count):將字符數組中的一部分轉成字符串.

靜態方法:

static String copyValueOf(char[]);

static String copyValueOf(char[] data, int offset, int count)

static String valueOf(char[]):

3.2 將字符串轉成字符數組。(重要)

返回類型:char[] 方法:toCharArray():

3.3 將字節數組轉成字符串.

String(byte[])

String(byte[],offset,count):將字節數組中的一部分轉成字符串.

3.4 將字符串轉成字節數組.

返回類型:byte[] 方法:getBytes():

3.5 將基本數據類型轉成字符串

static String valueOf(int)

static String valueOf(double)

  3+""; //String.valueOf(3); 兩者的結果是相同的,都是輸出的字符串類型的”3”

特殊之處:字符串和字節數組在轉換過程中,是可以指定編碼表的.

4. 替換

String replace(oldchar,newchar);

5. 切割

String[] split(regex);

6. 子串,獲取字符串中的一部分.

String substring(begin);

String substring(begin,end);

7. 轉換,去除空格,比較.

7.1 將字符串轉成大寫或則小寫.

String toUpperCase();

String toLowerCase();

7.2 將字符串兩端的多個空格去除.

String trim();

7.3 對兩個字符串進行自然順序的比較.

int compareTo(string);

練習實例代碼:

  1 class  StringFunctionDemo  2 {  3     public static void main(String args[])  4     {  5         //functionLength();  6         //functionJudge();  7         //functionTrans();  8         //functionReplace();  9         //functionSplit(); 10         functionSub(); 11         function_7(); 12     } 13     //去除空格,轉成大寫或者小寫,輸出,比較兩個字符串的大小. 14     public static void function_7() 15     { 16         String str = "    Hello Java     "; 17         printer(str.toLowerCase()); //全部轉換為小寫字母輸出 18         printer(str.toUpperCase()); //全部轉換為大寫字母輸出 19         printer(str.trim()); //將字符串兩邊的空格去除輸出字符串. 20  21         String str1 = "aba"; 22         String str2 = "aaa"; 23  24         printer(str1.compareTo(str2)); //將兩個字符串進行自然順序比較大小  正數表示前面的字符串大.負數后面的字符串大. 25     } 26     //截取字符串中的子串字符串. 27     public static void functionSub() 28     { 29         String str = "abcdef"; 30  31         printer(str.substring(2));//從指定位置開始到結尾。如果角標不存在,會出現字符串角標越界的異常。 32         printer(str.substring(2,4));//包含開頭頭,不包含結尾  str.substring(0,s.length()); 33     } 34      35      36     //定義了一個將字符串轉換為字符串數組的方法 37     public static void  functionSplit() 38     { 39         String str = "zhagnsan,lisi,wangwu,qianliu"; 40  41         String[] arr  = str.split(","); //將字符串轉換為字符組數組. 42  43         for(int x = 0; x < arr.length; x++) 44         { 45             printer("String [] arr = "+arr[x]); 46         } 47     } 48  49      50     //定義了替換字符串內容的有關方法 51     public static void functionReplace() 52     { 53         String str = "hello java"; 54  55         //String str1 = s.replace('q','n');  //如果要替換的字符不存在,返回的還是原來的字符串. 56          57         String str1 = str.replace("java","world");  //用字符串"world"替換原來字符串中的"java". 58         printer("str="+str); 59         printer("str1="+str1); 60     } 61      62      63     //定義了一個字符串和字符數組之間轉換相關的方法 64     public  static void functionTrans() 65     { 66         char [] arr = new char []{'a','b','c','d','e'}; 67         String str = new String(arr);  68         String str1 = new String(arr,1,3);    //將字符從1角標的元素開始的后面3個元素一起轉化成字符串 69         printer("str = "+str);   //將字符數組轉換成字符串. 70         printer("str1 = "+str1);   71          72         String str2 = "abcdefg"; 73         char [] ch = str2.toCharArray(); //將字符串轉換為字符數組 74         for(int i = 0;i<ch.length;i++) 75         { 76             printer("ch = "+ch[i]);   //將字符數組打印出來. 77         } 78     } 79     //定義了判斷字符串有關的方法操作 80     public static void functionJudge() 81     { 82         String str = "HelloWorld.java"; 83          84         printer(str.contains("java")); //判斷是否保護字符串"java" 85          86         printer(str.isEmpty());//判斷長度是否為0; 87          88         printer(str.startsWith("Hello")); //判斷是否是"Hello"字符串開頭 89          90         printer(str.endsWith(".java")); //判斷是否是".java"的文件. 91     } 92      93     //定義了獲取字符串位置的有關方法 94     public static void functionLength() 95     { 96          97         String s = "abcdefgaqw"; 98          99         printer(s.length());//輸出字符串的長度.100         101         printer(s.charAt(5));//當輸入的角標超出范圍時,會發生字符串角標越界的異常.102         103         printer(s.indexOf('a')); //獲取字符'a'在字符串中的位置.獲取的是第一次出現的位置.104         105         printer(s.indexOf('a',2)); //從位置2開始索引a.106         107         printer(s.indexOf('z')); //如果沒有找到,則返回-1.輸出的結果-1.108         109         printer(s.lastIndexOf('c',4)); //反向索引字符在字符串中的位置.110         111     }112     113     114     115     public static void printer(Object obj)116     {117         System.out.println(obj);118     }119     120 }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲福利视频久久| 国产福利精品av综合导导航| 国语自产偷拍精品视频偷| 欧美午夜女人视频在线| 亚洲在线一区二区| 欧美又大又粗又长| 国产精品人成电影在线观看| 国产精品视频免费在线| 911国产网站尤物在线观看| 欧美激情第三页| 欧美一级片久久久久久久| 成人免费视频a| 亚洲2020天天堂在线观看| 91在线精品播放| 日韩在线观看网站| 久久久亚洲精选| 欧美成人高清视频| 亚洲免费伊人电影在线观看av| 91国在线精品国内播放| 日韩成人免费视频| 性夜试看影院91社区| 91av视频在线观看| 日韩在线观看视频免费| 亚洲免费av电影| 亚洲欧美自拍一区| 久久视频国产精品免费视频在线| 久久青草精品视频免费观看| 俺去啦;欧美日韩| 久久在精品线影院精品国产| 一本色道久久综合狠狠躁篇的优点| 亚洲精品小视频| 欧美极品美女视频网站在线观看免费| 在线日韩日本国产亚洲| 欧美亚洲视频在线看网址| 91九色视频导航| 中文字幕日韩精品在线| 成人两性免费视频| 国产一区二区丝袜| 日韩精品在线免费观看| 欧美丰满少妇xxxxx| 久久久久久国产精品美女| 欧洲美女免费图片一区| 91美女福利视频高清| 欧美国产视频日韩| 日本国产高清不卡| 亚洲一级免费视频| 色噜噜国产精品视频一区二区| 精品国产乱码久久久久久虫虫漫画| 日韩欧美在线视频观看| 国产一区二区三区在线观看网站| 国产在线观看一区二区三区| 91人成网站www| 国产一区二区av| 亚洲国内精品在线| 国产精品爽爽ⅴa在线观看| www.亚洲免费视频| 成人免费黄色网| 精品久久久久久久久久久| 麻豆国产va免费精品高清在线| 久久在线免费观看视频| 国产suv精品一区二区| 亚洲人成网在线播放| 日韩av在线免费播放| 国产精品久久久久久久av电影| 在线精品播放av| 日韩av在线网站| 国产精品电影一区| 日韩成人在线视频| 国产精品久久不能| 日韩在线播放av| 一区二区欧美亚洲| 亚洲福利影片在线| 中文字幕精品久久| 国内精品久久久久影院优| 九九精品在线视频| 亚洲美腿欧美激情另类| 亚洲精品国精品久久99热一| 亚洲成人av片| 亚洲欧美国产精品专区久久| 中文字幕精品一区二区精品| 日韩激情片免费| 亚洲伊人久久大香线蕉av| 久久偷看各类女兵18女厕嘘嘘| 国产亚洲精品成人av久久ww| 亚洲毛片在线免费观看| 欧美亚洲视频在线观看| 欧美中文在线观看| 成人午夜黄色影院| 久久夜精品va视频免费观看| 69av在线播放| 亚洲深夜福利在线| 久久精品中文字幕免费mv| 精品高清一区二区三区| 国产欧美婷婷中文| 欧洲日本亚洲国产区| 欧美国产视频一区二区| 欧美大片网站在线观看| 26uuu亚洲国产精品| 亚洲成人激情视频| 亚洲精品国产成人| 欧美成人黑人xx视频免费观看| 亚洲国产精品成人va在线观看| 欧美午夜www高清视频| 国产视频在线一区二区| 久久99热精品这里久久精品| 92版电视剧仙鹤神针在线观看| 青青草国产精品一区二区| 国产精品自拍偷拍视频| 2024亚洲男人天堂| 国a精品视频大全| 日韩有码片在线观看| 日韩欧美在线第一页| 欧美日韩在线视频一区二区| 国产日韩在线免费| 久久久久久999| 亚洲欧美中文日韩在线v日本| 超碰97人人做人人爱少妇| 91av免费观看91av精品在线| 成人淫片在线看| 久久精品在线播放| 国产精品日日摸夜夜添夜夜av| 欧美午夜视频在线观看| 久久久久久久久久久人体| 国产日韩中文字幕| 欧美国产视频日韩| 亚洲变态欧美另类捆绑| 日产精品久久久一区二区福利| 亚洲国产成人精品久久久国产成人一区| 亚洲裸体xxxx| 岛国视频午夜一区免费在线观看| 91日韩在线播放| 亚洲第一区第二区| 国产精品一区专区欧美日韩| 激情亚洲一区二区三区四区| 中文字幕av日韩| 欧美天天综合色影久久精品| 欧美精品中文字幕一区| 亚洲老头同性xxxxx| 91精品国产乱码久久久久久蜜臀| 亚洲一区免费网站| 97视频在线观看免费| 色综合色综合网色综合| 国产精品久久色| 国产精品吴梦梦| 欧美极品美女视频网站在线观看免费| 欧美日韩国产中文精品字幕自在自线| 久久久国产精品视频| 国产精品女人久久久久久| 色天天综合狠狠色| 成人欧美在线观看| 4p变态网欧美系列| 欧美日韩精品二区| 久久国产精品99国产精| 日韩av大片在线| 欧亚精品中文字幕| 国产中文字幕91| 欧美激情免费观看| 亚洲精品中文字幕av| 国产欧美日韩免费看aⅴ视频| 精品国产视频在线| 亚洲毛片在线观看.| 最近2019中文字幕第三页视频| 一个人看的www欧美| 日韩在线视频观看正片免费网站|