StringBuffer,数组排序,Arrays,Character

来源:互联网 发布:seo自媒体 编辑:程序博客网 时间:2024/06/05 06:31
1.StringBuffer1)用字符串做拼接比较耗时耗空间,为了解决这个问题,Java提供了一个字符串缓冲区类。        (2)StringBuffer构造方法        A:StringBuffer()        B:StringBuffer(int Size)        C:StringBuffer(String str)        (3)StringBuffer的常见功能        A:添加功能public StringBuffer append(String str)public StringBuffer insert(int offset,String str)        B:删除功能public StringBuffer deleteCharAt(int index)public StringBuffer delete(int start,int end)        C:替换功能public StringBuffer replace(int start,int end,String str)        D:反转功能public StringBuffer reverse()        E:截取功能public StringBuffer subString(int start)public StringBuffer subString(int start,int end)        (4)String和StringBuffer的转换        String-StringBuffer(构造方法)        StringBuffer-String(toString()方法)        (5)小问题        A:String,StringBuffer,StringBulider的区别        String内容是不可变的,其余两个内容是可变的,StringBuffer是可同步的,效率低,但是安全,StringBuilder是不同步的,数据不安全,但是效率高。        B:StringBuffer和数组的区别        二者都可以看作是一个容器,StringBuffer最终装的是一个字符串数据,但是数组可以放置多种数据,但必须是同一种数据。        (6)StringBuffer和String作为形参传递问题        String作为形式参数传递,就和普通类型一样,在方法中改变值但是在main中并没有改变,StringBuffer作为形参时,做赋值运算和String一样,相当于普通类型,但是做追加删除等操作时,就和引用类型是一样的,会改变在main方法中的值。2.数组高级以及Arrays1)排序        a.冒泡排序public static void buddlesort(int[] arr)        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]){ 交换arr[y]和arr[y+1]}        }        }        b.选择排序public static void buddlesort(int[] arr)        for(int x=0 ; x<arr.length-1 ; x++){        for(int y=x+1 ; y<arr.length ; y++ )        {        if(arr[x] > arr[y]){ 交换arr[x]和arr[y]}        }        }        (2)查找        a.基本查找(针对数组有序)        b.二分查找(针对数组有序)        (3)Arrays工具类        a.把数组转成字符串public static String(int[] a)        b.排序public static sort(int[] a)        c.二分查找public int binarySearch(int[] a,int key)        (4)把字符串中的字符进行排序       首先将字符串转化成数组(Strig.toCharArray()),利用sort进行排序,再将排序后的数组转化成字符串(String的构造方法)。3.Integer1)Integer的构造方法        Integer i = new Integer(int i);        Integer i= new Integer(String str);        (2)int和String的相互转换        A:String-int        Integer.parseInt(String str);        B:int-String        String.value(int i);        (3)其他进制的转化        A.十进制到其他进制(2-36)public static String toString(int i,int radix)        B.其他进制到十进制public static int parseInt(String s,int radix)        (4)JDK5的新特性        自动装箱   基本类型--引用类型        自动拆箱   引用类型--基本类型        把下面的这个代码理解即可:        Integer i = 100;        i += 200;        (5)面试题        -128到127之间的数据缓冲池问题4.Character        (1)Character构造方法        Character ch = new Character('a');        (2)要掌握的方法:        A:判断给定的字符是否是大写public static bolean isUppperCase(char ch)        B:判断给定的字符是否是小写public static bolean isLowerCase(char ch)        C:判断给定的字符是否是数字字符public static bolean isDigit(char ch)        D:把给定的字符转成大写public static char toUppperCase(char ch)        E:把给定的字符转成小写public static char toLowerCase(char ch)        (3)案例:        统计字符串中大写,小写及数字字符出现的次数
0 0
原创粉丝点击