黑马程序员_String类以及equals和==方法

来源:互联网 发布:十大高薪职业知乎 编辑:程序博客网 时间:2024/06/06 18:26
------- android培训、java培训、期待与您交流! ----------

String类的方法

声明字符串

常量声明方式:String  stringhello = “hello”;

对象声明方式:字符串类  字符串名 = new 字符串类(参数);

               如:  String  stringhello = new  String ” hello ”);

创建字符串

String  a = new  String()

初始化一个新创建的String对象,该对象表示一个空(unll)的字符串;

String  a = new  String(string)

初始化一个新创建的String对象,该对象初始化为参数string表示的字符串;如上面的例子。

String  a = new  String(char chars[])

初始化一个新String对象,该对象表示字符数组顺序组成的字符串

String  a = new  String(char chars[] , int  startindex , int munchars)

初始化一个新String对象,该对象表示由字符数组的部分组成的字符串,第二个参数表示部分字符数组的初始位置,第三个参数表示从起始位置开始的字符数量;

String  a = new  String(int [] , int begin , int end)

String  a = new  String(StringBuffer)

初始化一个新String对象,该对象的内容是stringBuffer类所包含的字符数组。

字符串操作:

Public char charAtint index

返回字符串中第index个字符;如charAt2),返回字符串第二个字符。

Public int length()

返回字符串的长度; 

Public int indexOf(String str)

返回字符串中出现str的第一个位置,如没有则返回-1

Public int indexOfString str, int  fromIndex

返回字符串从fromIndex开始出现str的第一个位置;

Public Boolean equalsIgnoreCaseString another

比较字符串与another是否一样(忽略大小写);如:

System.out.println(s1.equalsIgnoreCase(s2));  //比较s1s2是否相等,并输出一个boolean值(true 或者 false

Public String replacechar oldchar , char newchar

在字符串中用newchar字符替换oldchar字符;如:

String  s = “我正在学习我的java”;

String  sr = s.replace(‘我’ ,’你’);

System.out.println(sr);   //结果为:你正在学习你的java

Public Boolean startsWithString prefix

判断字符串是否以prefixt开头;

Public Boolean endsWithString suffix

判断字符串是否以prefix字符串结尾;

Public String toUpperCase()

返回一个字符串为该字符串的大写形式;

Public String toLowerCase()

返回一个字符串为该字符串的小写形式;

Public String substringint beginIedex

返回该字符串从beginIedex开始到结尾的子字符串;

Public String substringint beginIedex , int endIndex

返回该字符串从beginIedex开始到endIedex结尾的子字符串(下标为endIedex的字符并不返回);

  

Public String split( string  s)

将某个字符串里按照s的规则分割为数组;如:

String s = “ Mary , F , 2011”;

String[] s1 = s.split( “ ,”);    //s1这里这种里面有3个字符,分别为:MaryF2011

Public String concatString s

字符串的连接,如:

String  s1 = new String(“hello”);

String  s2 = new String(“world”);

String  s3 = s1.concat(s2);

静态重载方法:

Public  static  String  valueOf(。。。) 可以将基本类型数据转换为字符串;

如:Public static String valueOfdouble d)等

equals==方法

Java.lang.String类对象表示不可修改的Unicode编码字符串

Java中双引号括起来的字符串也被当作String对象

如:System.out.pringtln(“abc”.equals(“abc”));  //输出true

String类的equals方法:String类已经对equals方法就行了重写。

String  str1 = new String(“chain”);

String  str2 = new String(“china”):

System .out.println(str1.equals(str2));  /*输出为truestr1.equals(str2)用来判断str1str2指向是否相等*/

== 方法是判断字符串自身的内容是否相等。

Equals是表示的是指向是否相等

public class TestString_1

{

public static void main(String[] args)

{

String str1 = new String("china");//new出来的东西存于堆中

String str2 = new String("china");

System.out.println(str1.equals(str2)); /*true   str1.equals(str2) 用来判断str1指向的对象的内容和str2指向的对象的内容是否相等*/

if (str1 == str2) /*是判断str1str2自身的内容是否相等?  还是用来判断str1指向的对象的内容和str2指向的对象的内容是否相等? 答案: 代表前者*/

System.out.println("str1 == str2");  

else

System.out.println("str1 != str2");

String str3 = "china";   //字符串常量china存于数据区。

String str4 = "china";

if (str3 == str4)

System.out.println("str3 == str4");  //true

else

System.out.println("str3 != str4");

}

}

Public static  String  valueOf(…)  可以将基本数据类型转换为字符串。

如:int  i  =  123 ;

String  str = “345”;

str = String.valueOf(i);  //将数字转换为字符串

i = Integer.parseInt(str);  //将字符串转换为数字,如果str有非数字字符会有异常。

tringBuffer

String类中没有修改字符串的方法,但是StringBuffer类中有大量修改字符串的方法

 

 

原创粉丝点击