`
Yi_XiaoFei
  • 浏览: 5234 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

StringBuffer

阅读更多

1、StringBuffer对象的初始化

通常情况下一般使用构造方法进行初始化

例如:

StringBuffer sb = new StringBuffer();        //初始化对象为空

StringBuffer sb = new StringBuffer(“abc”);   //初始化对象是字符串”abc”

注意:

StringBuffer和String属于不同的类型,不能直接进行强制类型

StringBuffer sb = new StringBuffer(s);   //String转换为StringBuffer

String s = sb.toString();              //StringBuffer转换为String

2、StringBuffer常用方法

  • append():字符串末尾连接字符
  • deleteCharAt(int index):删除指定位置字符
  • setChatAt(int index,char ch):替换指定位置字符
  • insert(int offset,char ch):指定位置插入字符
  • reverse:反转字符串

 

 

3.相关题目:

zigzag-conversion

 

The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)
P        A        H        N
A   P   L   S   I    I    G
Y        I         R
Write the code that will take a string and make this conversion given a number of rows:
string convert(string text, int nRows);
convert("PAYPALISHIRING", 3) should return "PAHNAPLSIIGYIR" .

 

4.参考代码:

 

public class ZigZag {
	public String convert(String s,int nRows){
		char[] c = s.toCharArray();
		StringBuffer[] sb = new StringBuffer[nRows];
		for(int i=0;i<sb.length;i++)
			sb[i] = new StringBuffer();
		int i = 0;
		while(i<c.length){
			for(int j=0;j<nRows&&i<c.length;j++)
				sb[j].append(c[i++]);
			for(int j=nRows-2;j>=1&&i<c.length;j--)
				sb[j].append(c[i++]);
		}
		for(int j=1;j<sb.length;j++)
			sb[0].append(sb[j]);
		return sb[0].toString();
	}
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics