Java StringBuff

String 是一个字符串,但是字符串的内容不可改变,改变的只是内存地址的批晌 ,那么如果现在要想让字符串的内容可以修改,则必须使用StringBuff


StringBuffer 字符串连

package org.stringbufferdemo;

public class StringBuefferDemo01 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		StringBuffer buf = new StringBuffer();
		buf.append("Hello").append(" World");
		System.out.println(buf);
	}

}


 一般情况下StringBufffer 往往都用在频繁修改字符串的地方


package org.stringbufferdemo;

public class StringBuefferDemo01 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		StringBuffer buf = new StringBuffer();
		fun(buf);
		
		for (int i=0;i<1000;i++){
			buf.append(i);
		}
		
		System.out.println(buf);
	}
	
	public static void fun(StringBuffer buf){
		buf.append("hello world!!!").append("\n");
	}
}


StringBuffer 常用方法

在指定位置处添加内容

默认情况下所有的内容都是在StringBuffer 最后添加的

使用Insert()方法完成


package org.stringbufferdemo;

public class StringBufferDemo02 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		StringBuffer buf =  new StringBuffer();
		buf.append("Hello World");
		buf.insert(0,"aabbcc");
		System.out.println(buf);
	}

}


删除指定范围的内容

public StringBuffer delete(int start,int end)


package org.stringbufferdemo;

public class StringBufferDemo03 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		StringBuffer buf = new StringBuffer();
		buf.append("hello world").delete(0, 5);
		System.out.println(buf);
	}

}


反转字符串内容

public StringBuffer reverse()


package org.stringbufferdemo;

public class StringBufferDemo03 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		StringBuffer buf = new StringBuffer();
		buf.append("Hello World");
		buf.reverse();
		System.out.println(buf);
	}

}


深入引用传递

范例一:


package org.staticdemo;

class A{
	int x = 10;
}

public class StringDemo03 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		A a =  new A();
		a.x = 30;
		fun(a);
		System.out.print(a.x);
	}
	
	public static void fun(A a){
		a.x = 100;
	}

}



Java StringBuff_第1张图片



范例二:

package org.staticdemo;

public class StringDemo04 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String str = "hello";
		fun(str);
		System.out.println(str);
	}
	
	public static void fun(String temp){
		temp = "world";
	}

}


Java StringBuff_第2张图片



范例三:

package org.staticdemo;

class A{
	String str = "mldn";
}

public class StringDemo03 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		A a =  new A();
		a.str = "hello";
		fun(a);
		System.out.print(a.str);
	}
	
	public static void fun(A a){
		a.str = "world";
	}

}


Java StringBuff_第3张图片



package org.stringdemo;

class Person{
	private String name;
	private int age;
	private Book book;
	private Person child;
	
	public Person(String name,int age){
		this.setName(name);
		this.setAge(age);
	}
	
	public void setChild(Person child){
		this.child = child;
	}
	
	public void setBook(Book book){
		this.book = book;
	}
	
	public void setName(String name){
		this.name = name;
	}
	
	public void setAge(int age){
		this.age = age;
	}
	
	public Person getChild(){
		return this.child;
	}
	
	public Book getBook(){
		return this.book;
	}
	
	public String getName(){
		return this.name;
	}
	
	public int getAge(){
		return this.age;
	}
}

class Book{
	private String title;
	private float price;
	private Person person;
	
	public Book(String title,float price){
		this.setTitle(title);
		this.setPrice(price);
	}
	
	public void setPerson(Person person){
		this.person = person;
	}
	
	public void setTitle(String title){
		this.title = title;
	}
	
	public void setPrice(float price){
		this.price = price;
	}
	
	public Person getPerson(){
		return this.person;
	}
	
	public String getTitle(){
		return this.title;
	}
	
	public float getPrice(){
		return this.price;
	}
}

public class StringDemo08 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Person per1 =  new Person("张三",40);
		Person child =  new Person("张四",20);
		
		per1.setChild(child);
		
		Book book1 = new Book("java",80.6f);
		Book book2 = new Book("童话",30.6f);
		
		per1.setBook(book1);
		book1.setPerson(per1);
		child.setBook(book2);
		
		System.out.println(per1.getBook().getTitle());   // 一个人有一本书
		System.out.println(per1.getChild().getName());   // 一个儿童属于一个人
		System.out.println(child.getBook().getTitle());   // 一个人有一本书
		System.out.println(book1.getPerson().getName()); // 一本书属于一个人
		
	}

}


你可能感兴趣的:(Java StringBuff)