zoukankan      html  css  js  c++  java
  • Java 常用类String类、StringBuffer类

    常用类

    String类、StringBuffer类

    • String代表不可变的字符序列
    • "xxxxxxx"为该类的对象

    举例(1)

    public class Test
    {
        public static void main (String[] args)
        {
            //测试1
            String s1 = "hello";
            String s2 = "world";
            String s3 = "hello";
            System.out.println(s1 == s3);//true
            
            //测试2
            s1 = new String ("hello");
            s2 = new String ("hello");
            System.out.println(s1 == s2);//false
            System.out.println(s1.equals(s2));//true
            
            //测试3
            char c[] = {'s','u','n',' ','j','a','v','a'};
            String s4 = new String(c);
            String s5 = new String(c,4,4);
            System.out.println(s4); //sun java
            System.out.println(s5); //java
        }
    }
    
    • 测试1

    s1为String类型的引用,它指向一个字符串常量,而字符串常量存放于data segment。给s3赋值为"hello"时,Java编译器会自动的在data segment中找会不会有重复的数据,如果重复的话就不会新增一个,所以s3指向原来的"hello"。

    • 测试2

    new出来的对象存放于堆空间,s1、s2两个引用指向不同的对象(堆空间不会自动检查的),所以s1不等于s2。

    equals()已经被重写,所以为true。

    • 测试3

    String类中的两个方法

    • String(char[] c):把c数组中的字符组成字符串返回。
    • String(char[] c,int i,int j):把c数组中从第i个字符开始往后j个字符组成字符串返回。

    举例(2)

    public class Test
    {
        public static void main (String[] args)
        {
            String s1 = "sun java";
            String s2 = "Sun Java";
            System.out.println(s1.charAt(1));//u
            System.out.println(s2.length());//8
            System.out.println(s1.indexOf("java"));//4
            System.out.println(s1.indexOf("Java"));//-1
            System.out.println(s1.equals(s2));//false
            System.out.println(s1.equalsIgnoreCaes(s2));//true
            
            String s = "我是程序员";
            String sr = s.replace('我','你');
            System.out.println(sr);//你是程序员
        }
    }
    
    • 说明
    • s1.charAt(int i):返回字符串s1中第i个字符。
    • s2.length():返回字符串长度。
    • s1.indexOf(String s):返回s在s1(字符串)中的起始位置,如果找不到则返回-1。
    • s1.equalsIgnoreCaes(String s):判断s和s1忽略大小写是否相等。
    • s.replace(char c1,char c2):把s中的c1全部替换成c2。

    举例(3)

    public class Test
    {
        public static void main (String[] args)
        {
            String s = "Welcome to Java World";
            String s1 = "   sun java   ";
            System.out.println(s.starstWith("Welcome"));//true
            System.out.println(s.endsWith("World"));//false
            String sL = s.toLowerCase();
            String sU = s.toUpperCase();
            System.out.println(sL);//welcome to java world
            System.out.println(sU);//WELCOME TO JAVA WORLD
            String subS = s.substring(11);
            System.out.println(subS);//Java World
            String sp = s1.trim();
            System.out.println(sp);//sum java
        }
    }
    
    • 说明
    • s.substring(int i):把字符串从第i个字符截断,返回后半段。
    • s1.trim():去掉字符串前后的空格,但是中间的不管。
  • 相关阅读:
    20150128-堆雪人
    20150127-梦里笑醒的声音
    20150126-渡口
    20150125-阴天
    FastAdmin 的上传代码在哪里?
    在 Linux 安装 IIS?
    FastAdmin env.sample 的用法
    可以方便配合 Git 的现代编辑器
    运算放大器复习
    Linux 权限使用 777 真的好吗?
  • 原文地址:https://www.cnblogs.com/031602523liu/p/8654204.html
Copyright © 2011-2022 走看看