Java StringBuff

来源:互联网 发布:专车抢单软件 编辑:程序博客网 时间:2024/06/04 18:17

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


StringBuffer 字符串连

package org.stringbufferdemo;public class StringBuefferDemo01 {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubStringBuffer 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 stubStringBuffer 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 stubStringBuffer 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 stubStringBuffer 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 stubStringBuffer 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 stubA a =  new A();a.x = 30;fun(a);System.out.print(a.x);}public static void fun(A a){a.x = 100;}}





范例二:

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





范例三:

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





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 stubPerson 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()); // 一本书属于一个人}}