String—03—StringBuffer、StringBuilder、基本数类型
2013-04-27 20:49
239 查看
/* StringBuffer是字符串缓冲区。是一个容器。 特点: 1,而且长度是可变化的。 2,可以直接操作多个数据类型。 3,最终会通过toString方法变成字符串。 C create U update R read D delete 1,存储 StringBuffer append(); 将指定数据添加到已有数据末尾处 StringBuffer insert(index,数据);可以将数据插入到指定index位置 2,删除 StringBuffer delete(start, end);删除缓冲区中数据,包含start,不包含end StringBuffer deletCharAt(index);删除指定位置字符 3,获取 char charAt(int index); int indexOf(String str) int lastIndexOf(String str) int length() String substring(int start, int end); 4,修改 StringBuffer replace(start,end,string); void setCharAt(int index, char ch); 5,反转 StringBuffer reverse(); 6, 将缓冲区中的数据存储到指定字符数组中 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin); JDK1.5版本之后出现了StringBuilder. StringBuffer是线程同步。安全,多线程使用 StringBuilder是线程不同步,多线程不安全,单线程效率高 以后开发建议使用StringBuilder 升级三个因素: 1,提高效率 2,提高安全性 3,简化书写 */ class StringBufferDemo { public static void main(String[] args) { //method_del(); //method_update(); StringBuffer sb = new StringBuffer("abcdef"); char[] chs = new char[4]; sb.getChars(1,4,chs,1); for(int x=0; x<chs.length; x++) { sop("char["+x+"]="+chs[x]); } } public static void method_update() { StringBuffer sb = new StringBuffer("abcde"); //sb.replace(1,4,"java"); sb.setCharAt(2,'k'); sop(sb.toString()); } public static void method_del() { StringBuffer sb = new StringBuffer("abcde"); //sb.delete(1,3); //sb.delete(0,sb.length());//清空缓冲区 //sb.delete(2,3); sb.deleteCharAt(2); sop(sb.toString()); } public static void method_add() { StringBuffer sb = new StringBuffer(); sb.append("abc").append(true).append(34); // StringBuffer sb1 = sb.append(34); // sop("sb==sb1: "+(sb==sb1));//true sb.insert(1,"qq"); sop(sb.toString()); // sop(sb1.toString()); } public static void sop(String str) { System.out.println(str); } }
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/* 基本数据类型对象包装类。 byte Byte short Short int Integer long Long boolean Boolean float Float double Double char Character 基本数据类型对象包装类的最常见作用, 就是用于基本数据类型和字符串类型之间做转换。 基本数据类型转成字符串 1,基本数据类型+"" 2,基本数据类型.toString(基本数据类型值); 如:Integer.toString(34);//将34整数变成"34" 字符串转成基本数据类型 xxx a = Xxx.parseXxx(String); int a = Integer.parseInt("123"); double b = Double.parseDouble("12.34"); boolean b = Boolean.parseBoolean("true"); Integer i = new Integer("123");//非静态的 int num = i.intValue(); 十进制转成其他进制 toBinaryString(); toHexString(); toOctalString(); 其他进制转成十进制 parseInt(string,radix); int x = Integer.parseInt("3c",16); */ class IntegerDemo { public static void sop(String str) { System.out.println(str); } public static void main(String[] args) { //sop("int max: "+Integer.MAX_VALUE);//整数类型的最大值 //将一个字符串转成整数。 //int num = Integer.parseInt("123");//必须传入数字格式的字符串 //long x = Long.parseLong("123"); //sop("num="+(num+4)); //sop(Integer.toBinaryString(6)); //sop(Integer.toHexString(60)); int x = Integer.parseInt("3c",16); sop("x="+x); } }
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/* JDK1.5 版本的新特性 */ class IntegerDemo1 { public static void main(String[] args) { Integer x = 4;// 自动装箱 x = x + 2;//x+2:自动拆箱,调用x.intValue(),变成int类型,与2进行运算 //再将和装箱赋给x sop(x); Integer m = 128; Integer n = 128; sop("m==n: "+(m==n));//false Integer a = 127; Integer b = 127; sop("a==b:"+(a==b));//true,因为a和b指向了同一个Integer对象。 //因为当数值在byte范围内,对于新特性,如果该数值已经存在,就不会开辟新空间 } public static void method() { Integer x = new Integer("123"); Integer y = new Integer(123); sop("x==y: "+(x==y));//false sop("x.equals(y): "+x.equals(y));//true } public static void sop(Object str) { System.out.println(str); } }
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
个人总结:
相关文章推荐
- 黑马程序员----论String,StringBuffer,StringBuilder,基本数据类型对象包装类
- 黑马程序员_String类及StringBuffer和StringBuilder概述和功能、基本数据类型
- 黑马程序员_String类及StringBuffer和StringBuilder概述和功能、基本数据类型
- 黑马程序员------API(String类,StringBuffer,StringBuilder及基本数据类型包装类)
- 【黑马程序员】------java基础----String类、StringBuffer(StringBuilder)、基本数据类型包装类
- 黑马程序员——String、StringBuffer、StringBuilder和基本数据类型包装类
- 黑马程序--JAVA字符串String、StringBuffer、StringBuilder、基本数据类型包装
- 黑马程序员——常用API(StringBuilder和StringBuffer以及基本数据类型包装类)
- 黑马程序员——Java String、StringBuffer、StringBuilder、基本数据类型对象包装类
- JAVA基础学习之String、StringBuffer、StringBuilder、基本数据类型的使用、整形进制转换、集合Collection、Vector、ArrayList、LinkedList、HashSet、TreeSet等(3)
- StringBuffer,StringBuilder,数组常见操作,Arrays,基本类型包装类--1
- StringBuffer,StringBuilder,数组常见操作,Arrays,基本类型包装类--2
- 黑马程序员——java第十三天:String类、StringBuffer、StringBuilder、基本数据类型对象包装类、进制转换
- String类、 StringBuffer、基本数据类型对象包装类
- (Java) String ,StringBuffer,StringBuilder 基本说明
- StringBuffer__【String类的应用】【基本数据类型包装类】
- java学习第十六天之基本数据类型包装类、StringBuffer
- 黑马程序员——String类,StringBuffer,基本数据类型包装类
- java自学之路-----StringBuffer 基本数据类型(装箱) 集合(迭代器)
- 黑马程序员——15,String,StringBuffer,基本数据类型包装对象