java——基础数据类型——字符串操作

========================================================================

获取字符串长度

String st = "bacdeg";

System.out.println(st.length());           

System.out.println("bacdeg".length());           

执行结果:

6

6

=====================================================================

判断字符串中是否包含有某个字符

String s7 = "ageheafeRTEYEWRTEWEWYWEHEhehaheh";

System.out.println(s7.length());

System.out.println(s7.contains("a"));

System.out.println("ageheafeRTEYEWRTEWEWYWEHEhehaheh".contains("a"));

System.out.println(s7.contains("aT"));

System.out.println("ageheafeRTEYEWRTEWEWYWEHEhehaheh".contains("aT"));

执行结果:

32

true

true

false

false

=============================================================================

将字符串全部变为小写或者大写

String s7 = "ageheafeRTEYEWRTEWEWYWEHEhehaheh";

System.out.println(s7.toLowerCase());    ——全部变为小写

System.out.println(s7.toUpperCase());    ——全部变为大写

执行结果:

ageheaferteyewrtewewywehehehaheh

AGEHEAFERTEYEWRTEWEWYWEHEHEHAHEH

=============================================================================

判断字符串是否以某个(串)字符开头或者结尾

String s7 = "ageheafeRTEYEWRTEWEWYWEHEhehaheh";

System.out.println(s7.startsWith("age"));

System.out.println(s7.startsWith("ageG"));

System.out.println(s7.endsWith("heh"));

        

System.out.println(s7.endsWith("heha"));

执行结果:

true

false

true

false

============================================================================

判断两串字符串是否完全相等

String s7 = "ageheafeRTEYEWRTEWEWYWEHEhehaheh";

System.out.println(s7.equals("ageheaferteyewrtewewywehehehaheh"));

System.out.println(s7.equals("AGEHEAFERTEYEWRTEWEWYWEHEHEHAHEH"));

System.out.println(s7.equals("ageheafeRTEYEWRTEWEWYWEHEhehaheh"));

System.out.println(s7.equals("ageheafeRTEYEWRTEWEWYWEHEhehaheh "));

执行结果:

false

false

true

false

============================================================================

忽略大小写,判断两串字符串是否完全相等

String s7 = "ageheafeRTEYEWRTEWEWYWEHEhehaheh";

System.out.println(s7.equalsIgnoreCase("ageheaferteyewrtewewywehehehaheh"));

System.out.println(s7.equalsIgnoreCase("AGEHEAFERTEYEWRTEWEWYWEHEHEHAHEH"));

System.out.println(s7.equalsIgnoreCase("ageheafeRTEYEWRTEWEWYWEHEhehaheh"));

System.out.println(s7.equalsIgnoreCase("ageheafeRTEYEWRTEWEWYWEHEhehaheh "));

执行结果:

true

true

true

false

=========================================================================

替换字符为目标字符

str.replace(char oldChar , char newChar )

——oldChar:要替换的字符或者字符串;

——newChar:用于替换原来的字符串的内容;

String s15 = " a g eheafe54RTEYEWRTrh rhr   EagW EWYWEH Ehehah eh ";

System.out.println(s15.replace("a","999"));

System.out.println(s15);

执行结果:

 999 g ehe999fe54RTEYEWRTrh rhr   E999gW EWYWEH Eheh999h eh

 a g eheafe54RTEYEWRTrh rhr   EagW EWYWEH Ehehah eh

==============================================================================

去除字符串开头和结尾的空格

String s14 = " a g eheafe54RTEYEWRTrh rhr   EagW EWYWEH Ehehah eh ";

System.out.println(s14.length());

System.out.println(s14.trim());

System.out.println(s14.trim().length());

执行结果:

52

a g eheafe54RTEYEWRTrh rhr   EagW EWYWEH Ehehah eh

50

=============================================================================

indexOf()方法返回的是搜索的字符或者字符串首次出现的位置

lastIdexOf()方法返回的是搜索的字符或者字符串最后一次出现的位置

 

PS:字符串的下标识是:   -1——length()-1

PS:如果没有检索到字符串S,则返回-1

String s8 = "ageheafe54RTEYEWRTrhrhrEagWEWYWEHEhehaheh";

String s9 = " ageheafe54RTEYEWRTrhrhrEagWEWYWEHEhehaheh";

String s10 = "ageheafe54RTEYEWRTrhrhrEagWEWYWEHEhehaheh ";

String s11 = " ageheafe54RTEYEWRTrhrhrEagWEWYWEHEhehaheh ";

String s12 = " ageheafe54RTEYEWRTrh rhrEagWEWYWEHEhehaheh ";

System.out.println(s8.length());       ——41

System.out.println(s9.length());       ——42

System.out.println(s10.length());       ——42

System.out.println(s11.length());       ——43

System.out.println(s12.length());       ——44

System.out.println(s8.indexOf("a"));——————0

System.out.println(s8.indexOf("e"));——————2

System.out.println(s9.indexOf("a"));——————1

System.out.println(s9.indexOf("e"));——————3

System.out.println(s9.indexOf(" "));——————0

System.out.println(s9.indexOf("z"));—————— -1

System.out.println(s9.lastIndexOf("a"));——————38

System.out.println(s9.lastIndexOf("h"));——————41

System.out.println(s9.lastIndexOf(" "));——————0

System.out.println(s9.lastIndexOf("z"));—————— -1

System.out.println(s9.lastIndexOf(""));——————42

==========================================================================

获取指定索引位置的字符

String s9 = " ageheafe54RTEYEWRTrhrhrEagWEWYWEHEhehaheh";

System.out.println(s9.charAt(0));

System.out.println(s9.charAt(1));

执行结果:

a

=====================================================================

获取子字符串——利用下标进行截取,注意下标是从0开始的,空格占用一个索引位置

1)、substring(int beginIndex)——从指定的索引位置开始截取,直到字符串的结尾;

1)、substring(int beginIndex,int endIndex)——从指定的索引位置开始截取,到指定索引结束;

String s13 = " a g eheafe54RTEYEWRTrh rhr   EagW EWYWEH Ehehah eh ";

System.out.println(s13.substring(2));

System.out.println(s13.substring(2,29));

执行结果:

 g eheafe54RTEYEWRTrh rhr   EagW EWYWEH Ehehah eh

 g eheafe54RTEYEWRTrh rhr  

==========================================================================

字符串分隔

(1)split( String sign):根据给定的分隔符号对字符串进行分隔;

       

sign为分隔符号,如果想定义多个分隔符号,可以使用符号“|”,例如“,|=”,表示分隔符号分别为 ,和 =

 

2)、split(String sign,int limit):根据给定的分隔符对字符串进行拆分,并限定拆分次数;

 

sign为分隔符号,如果想定义多个分隔符号,可以使用符号“|”,例如“,|=”,表示分隔符号分别为 ,和 =

 

limit:模式匹配次数,如果设置为n,则分割为n-1次,得到的数组长度不会大于n,数组的最后一项,是最后匹配的分隔符以后的全部内容;

String s16 = "1,2,333,444,55,6664,75775,8y43u";

String[] firstArray = s16.split(",");

System.out.println(firstArray.length);

System.out.println("----------------");

System.out.println(firstArray[0]);

System.out.println(firstArray[1]);

System.out.println(firstArray[2]);

System.out.println("----------------");

for(String p : firstArray)

{

     System.out.println(p);

}

执行结果:

8

----------------

1

2

333

----------------

1  

2  

333  

444  

55  

6664  

75775  

8y43u  

=================================================================

String s21 = "1,2=333,444=55,6664,75775,8y43u";

String[] firstArray8 = s21.split(",|=");

System.out.println(firstArray8.length);

System.out.println("----------------");

System.out.println(firstArray8[0]);

System.out.println(firstArray8[1]);

System.out.println(firstArray8[2]);

System.out.println("----------------");

for(String p : firstArray8)

{

     System.out.println(p);

}

执行结果:

8

----------------

1

2

333

----------------

1

2

333

444

55

6664

75775

8y43u

String s20 = "1,2,333,444,55,6664,75775,8y43u";

String[] firstArray7 = s20.split(",",4);

System.out.println(firstArray7.length);

System.out.println("----------------");

System.out.println(firstArray7[0]);

System.out.println(firstArray7[1]);

System.out.println(firstArray7[2]);

System.out.println("----------------");

for(String p : firstArray7)

{

     System.out.println(p);

}

执行结果:

4

----------------

1

2

333

----------------

1

2

333

444,55,6664,75775,8y43u

====================================================================

原文地址:https://www.cnblogs.com/xiaobaibailongma/p/14426289.html