201711671135 《Java程序设计》第八章学习总结

教材学习内容

1.String是Java专门用来处理字符序列的算法String类在java.lang包中,由于java.lang包中的类被默认引入,因此程序可以直接使用String类。需要注意的是Java把String类声明为final类,因此用户不能扩展String类,即String类不可以有子类。

2.在String构造字符串对象中,相同的实体,但他们的引用却是不相同的。

String s = new String(“we are students”) 其中对象变量s中存放着引用,表明自己实体的位置,we are students是实体。

另外,用户无法输出String对象的引用,只能输出实体.

可以用一个已创建的String对象创建另一个String对象 String tom= new String(s);

String还有两个常用的构造方法

①char a[ ] ={‘J’,’a’,’v’,’a’};

String s = new String(a)

②String (char a[ ],int startIndex ,int count);    /*其中参数startIndex和count分别指定提取字符的起始位置和截取的个数*/

 char a[] = {'零','壹','贰','叁','肆','伍','陆','柒','捌','玖'};

 String s = new String(a,2,4);

 相当于

 String s = new String("贰叁肆伍");

3.与上文不同的是,String常量的引用,这个时候的两个不同变量有同一个实体和引用

String s1,s2;

s1=”你好”; s2=”你好”;

4.字符串可以进行并用:you和hi进行并置运算you+hi得到一个新的String对象,可以将这个新的String对象的引用赋值给一个String声明的对象

5①public int length():获取一个字符串的长度

②public boolean equals(String s):判断当前String对象的字符序列是否与参数s指定的String对象的字符序列相同                

③public boolean startsWith(String s)

判断当前String对象的字符序列前缀是否是参数指定的String对象s的字符序列

 

代码调试

import java.util.regex.*;

public class Example8_22 {

   public static void main(String args[ ]) {

      String s = "市话76.8元,长途:167.38元,短信12.68";

      String regex = "[0123456789.]+";    //匹配数字序列

      Pattern p =Pattern.compile(regex);  //模式对象

      Matcher m =p.matcher(s);                //匹配对象

      double sum =0;

      while(m.find()) {

         String item = m.group();

         System.out.println(item);

         sum = sum+Double.parseDouble(item);

      }

      System.out.println("账单总价格:"+sum);

   }

}

猜你喜欢

转载自blog.csdn.net/qq_41102402/article/details/84950321