灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:1932回复:0

[系统教程]JAVA培训教材(8)

楼主#
更多 发布于:2012-09-08 08:08

2)字符串和字节数组
和字符数组的形容类似
a)用字节创建字符串对象
String (byte [])String (byte[],int offset,int length)b)将字符串转换为字节数组
public byte[] getBytes()例如:
复制代码
public class E
{  public static void main(String args[])
   {  byte d[]="你我他".getBytes();          
      System.out.println("数组d的长度是(一个汉字占两个字节):"+d.length);//输出"数组d的长度是(一个汉字占两个字节):6"
      String s=new String(d,0,2);
      System.out.println(s);//输出"你"
   }
}

7.StringBuffer类前面学习了String字符串对象,String类创建的字符串对象是不可修改的,也就是说String字符串不能修改,删除,替换字符串中的某个字符,即String对象一但创建,那么实体是不可以再发生变化的.下面介绍StringBuffer类,该类能创建可修改的字符串序列,也就是说,该类对象的实体的内存空间可以自动改变大小,便于存放一个可变的字符序列.比如,一个StringBuffer对象调用用append方法可以追加字符序列,例如:
StringBuffer s=new StringBuffer("I love this game");
s.append(" !!");
//s的值就变为I love this game !!1)StringBuffer的构造方法a)StringBuffer()//无参数,可容纳16个字符,可以通过调用capacity()方法获取当前实体的实际容量b)StringBuffer(int size)//指定size大小的容量,当存放大于size时,实体容量自动增加,以便存放所增加的字符c)StringBuffer(String s)//指定实体的初始容量为参数s的长度额外再加16个字符,当超过size大小时,实体容量自动增加,以便存放所增加的字符注意:可以用String(StringBuffer bufferstring)创建一个字符串的对象2)StringBuffer类常用的方法a)append方法//追加字符串,刚刚讲过b)char charAt(int n)//得到第n(n>=0;;n<=s.capacity())个位置的字符c)void setCharAt(int n,char ch)//替换第n个位置的字符d)StringBuffer insert(int index,String str)//再第index的位置插入字符串str,并返回当前对象的e)StringBuffer reverse()//逆置当前对象的实体,并返回当前对象的f)StringBuffer delete(int startIndex,int endIndex)//删除从startIndex~endIndex-1之间的字符串,并返回当前对象的g)StringBuffer replace(int startIndex,int endIndex,String str)//用字符串str替换startIndex~endIndex-1之间的字符串,并返回当前对象的例如:
复制代码
class E
{ public static void main(String args[ ])
  { StringBuffer str=new StringBuffer("62791720");
    str.insert(0,"010-");//在第0个位置插入010-,当前实体变为"010-62791720"
    str.setCharAt(7 ,'8'); //把第8个位置的字符设置为8,当前实体变为"010-62781720"
    str.setCharAt(str.length()-1,'7');//把最后一个位置的字符设置为7,当前实体变为"010-62781727"
    System.out.println(str); //输出当前实体"010-62781727"
    str.append("-446");//追加字符串-446,当前实体变为"010-62781727-446"
    System.out.println(str);
    str.reverse();//逆置当前实体,实体变为644-72718726-010
    System.out.println(str);
  }
}



喜欢0 评分0
游客

返回顶部