java 中String 常用

Charsequence

最近在学习Android但是在学习过程中发现CharSequence这个数据类型,自己真的是不了解,在上网找了找,原来这是一个接口:在JDK1.4中,引入了CharSequence接口,实现了这个接口的类有:CharBuffer、String、StringBuffer、StringBuilder这个四个类。 


CharBuffer为nio里面用的一个类,String实现这个接口理所当然,StringBuffer也是一个CharSequence,StringBuilder是Java抄袭C#的一个类,基本和StringBuffer类一样,效率高,但是不保证线程安全,在不需要多线程的环境下可以考虑。 

提供这么一个接口,有些处理String或者StringBuffer的类就不用重载了。

但是这个接口提供的方法有限,只有下面几个:charat、length、subSequence、toString这几个方法,感觉如果有必要,还是重载的比较好,避免用instaneof这个操作符。 

ublic class TestFormatter { 

        public static void main(String[] args) { 
                //%[argument_index$][flags][width][.precision]conversion 
                Formatter f1 = new Formatter(System.out); 
                //格式化输出字符串和数字 
                f1.format("格式化输出:%s %d", "a", 1235); 
                System.out.println("\n--------"); 
                //日期的格式化 
                Calendar c = new GregorianCalendar(); 
                f1.format("当前日期:%1$tY-%1$tm-%1$te", c); 
                System.out.println("\n--------"); 
                //日期的格式化,并将格式化结果存储到一个字符串变量中 
                String s = String.format("当前日期:%1$tY-%1$tm-%1$te", c); 
                System.out.println(s); 
                //2$:取第二个参数 
                //-: 指定为左对齐,默认右对齐 
                //5:最大输出宽度为20,不够会补空格,实际若超过则全部输出 
                //.2:在此表示输出参数2的最大字符数量,如果是浮点数字,则表示小数部分显示的位数 
                //s :表示输入参数是字符串 
                f1.format("%2$-5.2s %1$2s", "123", "456"); 

                //将格式化的结果存储到字符串 
                System.out.println("\n--------"); 
                String fs = String.format("身高体重(%.2f , %d)", 173.2, 65); 
                System.out.println(fs); 

                //printf()本质上也是用System.out作为输出目标构造Formatter对象 
                //调用format方法,并将printf的参数传给format方法而得。 
                System.out.println("\n--------"); 
                System.out.printf("身高体重(%.2f , %d)", 180.2, 65); 


        } 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值