黑马程序员技术交流社区

标题: 自学day13String和StringBuffer [打印本页]

作者: 牛德阳    时间: 2015-12-26 11:22
标题: 自学day13String和StringBuffer

复制代码

java 中用 String 类进行描述。对字符串进行了对象的封装。这样的好处是可以对字符串这种常见数据进行方便的操作。 对象封装后, 可以定义 N 多属性和行为。
特点: 字符串一旦被初始化就不可以被改变,存放在方法区中的常量池中。
String s1 = "abc";  // s1 指向的内 存中只有一个对象 abc。
String s2 = new String("abc") ;  // s2 指向的内 容中有两个对象 abc、 new 。
System.out.println(s1==s2) ; //false
System.out.println(s1. equals(s2) ) ; //true ,字符串中equals比较的是字符串内容是否相同。
字符串的构造方法是将字节数组或者字符数组转成字符串
String s1 = new String() ; //创建了一个空内容的字符串。
String s2 = null; //s2 没有任何对象指向是一个null 常量值。String s3="";//s3指向一个具体的字符串,该字符串没有内容
用以下方法将字符数组转成字符串

       new string(char[]);
       new String(char[],offset,count);
静态方法:
String.copyValueOf(char[])
String.copyValueOf(char[],offset,count)
按照面向对象的思想主要方法有:
1获取
2判断
3转换
String replace(oldChar, newChar) ;
String replace(oldstring, newstring) ;
注意:以上两种方法修改后变成新字符串 ,并不是将原字符串直接修改。
StringBuffer构造一个其中不带字符的字符串缓冲区,初始容量为16 个字符。
特点:
1: 可以对字符串内容进行修改。
2: 是一个容器。
3: 是可变长度的。
4: 缓冲区中可以存储任意类型的数据。
5: 最终需要变成字符串。

1、StringBuffer对象的初始化
需要注意的是,StringBuffer和String属于不同的类型,也不能直接进行强制类型转换,下面的代码都是错误的:
         StringBuffer s = “abc”;               //赋值类型不匹配
         StringBuffer s = (StringBuffer)”abc”;    //不存在继承关系,无法进行强转
StringBuffer对象和String对象之间的互转的代码如下:
         String s = “abc”;
         StringBuffer sb1 = new StringBuffer(“123”);
         StringBuffer sb2 = new StringBuffer(s);   //String转换为StringBuffer
         String s1 = sb1.toString();              //StringBuffer转换为String
StringBuffer常用方法增删改查,获取字串,反转
下面分享几个练习题;[code]<font color="#0000ff">package day13;
//练习1 除去两端空格的方法


public class lainxi1 {


作者: 牛德阳    时间: 2015-12-26 11:27
这篇发错了,不知道怎么删。。。。。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2