初识JAVA---分割字符串例子(8)

字符串分为两大类

String类,创建之后不会再做修改和变动  immutable

StringBuffer   StringBuilder类  创建之后允许在做更改和变化  StringBuilder是非线程安全的

注意再循环中使用String+=可能会带来效率问题

String类对象保存不可修改(immutable)的unicode字符序列

String类的下述方法能创建并返回一个新的String对象实例

        cancat replace replaceAll substring toLowerCase toUpperCase trim toString

查找:endWith   startsWith  indexOf  lastIndexOf

比较:equals  equalsIgnoreCase.

字符及长度:charAt length

JAVA5增加了format函数     %1$,8.5f %序号$标识  宽度及精度转换放肆

            %$中间的数字  是第几个参数的意思 上面的逗号表示千分位

             8.5f表示宽度是8 小数点后面占5位数 f表示实数

除了Immutable特点外,还要注意String常量的内部化(interned)

StringBuffer类对象保存可修改的Unicode字符序列 

StringBuffer类似,它效率高,不考虑线程安全性

构造方法

StringBuffer()

StringBuffer(int capacity)

StringBuffer(String initialString)

实现修改操作方法:append  insert  reverse setCharAt setLength

java.util.StringToken类提供了对字符串进行分割的功能

StringTokenizer(String str,String delim);

该类的重要方法

     public int countTokens();//分割串的个数

     public boolean hasMoreToken();//是否还有分割串

     public String nextToken();//得到下一分割串

import java.util.*;
class TestStringTokenizer
{
    public static void main(String[] args)
    {
        StringTokenizer st=new StringTokenizer("this is a Test"," ");//以文本字符分割
        while(st.hasMoreTokens()) {
            System.out.println(st.nextToken());
        }
        st=new StringTokenizer("253,197,546",",");
        double sum = 0.0;
        while(st.hasMoreTokens()) {
            sum +=Double.parseDouble(st.nextToken());    
        }
        System.out.println(sum);
    }
}

yun

this
is
a
Test   996.0
 

发布了103 篇原创文章 · 获赞 9 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_39653453/article/details/103636469