StringBuffer和数组排序

来源:互联网 发布:梭哈游戏c 算法实现 编辑:程序博客网 时间:2024/05/21 17:42

1:StringBuffer

1) 构造方法:

public StringBuffer():默认的容量是16;

public StringBuffer(String str):容量是str的长度加上16;

public StringBuffer(int capacity):输入指定的容量.

2) 成员方法:

public int length(): 获取当前缓冲区中的字符的长度;

public int capacity(): 获取当前缓冲区的容量;

public StringBuffer append(String str): 追加字符,在当前字符的后面

public StringBuffer insert(int offset,String str): 在指定的位置后面添加str;

public StringBuffer deleteCharAt(int index):删除指定位置的字符;

public StringBuffer delete(int start,int end): 包前不包后;

替换功能:public StringBuffer replace(int start ,int end , String str);

反转功能:public StringBuffer reverse();

截取功能:public String substring(int start);

public String substring(int start, int end); 截取功能返回值是String类型.

3) String和StringBuffer的区别:

String是一个不可变的序列,一旦被赋值,其值不可改变,并且这种浪费空间.(在常量池中开辟空间)

StringBuffer是一个可变的序列,线程是安全的,是同步的,但是同时效率低.(构造一个字符串缓冲区)


2:数组的排序(冒泡和选择)

1)冒泡:相邻的两个元素进行比较,大的放到后面,一直比到数组的最后,这样,数组的最大值就出现在数组的最大索引出.

for(int x = 0 ; x < arr.length -1 ; x++){

for(int y= 0; y < arr.length-1-x;y++){

if(arr[y]>arr[y+1])

int temp = arr[y];  arr[y] = arr[y+1] ;  arr[y+1] = temp ; 

}

}

2)选择:第一个元素依次和其他元素进行比较,然后将最小的值放到索引0处.

for(int x = 0 ; x < arr.length - 1 ; x ++){
for(int y = 1+x ; y < arr.length ; y++){
if(arr[x] > arr[y])

int  temp = arr[x];  arr[x] = arr[y] ;  arr[y] = temp;
}

}

原创粉丝点击