码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA String

时间:2015-07-20 06:49:43      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:

         String类是用来描述字符串,他提供了若干方法来操作字符串:

public class StringDemo {
    public static void main(String[] args) {
        String str1 = "abccbade";

        /**
         * 字符串中的获取
         */
        // 获取字符串的长度
        System.out.println("str1的长度是: " + str1.length());
        // 获取字符串中某个位置的字符
        System.out.println("str1第2个位置的字符: " + str1.charAt(2));
        // 获取某个字符在字符串中第一次出现的位置,如果没有这个字符,返回-1
        System.out.println("字符c在str1中第一次出现的位置: " + str1.indexOf(‘c‘));
        // 从某个位置开始,获取某个字符在字符串中第一次出现的位置,如果没有这个字符,返回-1
        System.out.println("从第2位开始,字符c在str1中第一次出现的位置: " + str1.indexOf(‘b‘, 2));
        // 反向根据字符,获取位置,(从右往左)如果不存在,返回-1
        System.out.println(str1.lastIndexOf(‘b‘));
        System.out.println(str1.lastIndexOf(‘b‘, 2));

        /**
         * 字符串中的判断
         */
        System.out.println("该字符串是以a字符串开头的吗?: " + str1.startsWith("a"));
        System.out.println("该字符串是以a字符串结尾的吗?: " + str1.endsWith("a"));
        System.out.println("该字符串是空的吗?: " + str1.isEmpty());
        System.out.println("该字符串包含字符串abc吗?: " + str1.contains("abc"));
        System.out.println("该字符串是否和abcd内容相同" + str1.equals("abcd"));
        System.out.println("该字符串是否和aBCcbAde内容相同"
                + str1.equalsIgnoreCase("aBCcbAde"));

        /**
         * 字符串的转换
         */
        // 将字符数组转换成字符串
        char[] charArray = { ‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘, ‘f‘ };
        System.out.println(new String(charArray));
        System.out.println(new String(charArray, 3, 3));
        System.out.println(String.copyValueOf(charArray));// 该方法为静态方法
        // 将字符串转换成字符数组
        System.out.println(str1.toCharArray());

        /**
         * 字符串的其他方法
         */
        // 切割字符串
        String str2 = "abc2def2ghi";
        String[] strArray = str2.split("2");
        for (int i = 0; i < strArray.length; i++) {
            System.out.println(strArray[i]);
        }

        // 大小写转换以及去掉首尾空格
        String str3 = "   Hello World   ";
        System.out.println(str3.toUpperCase());
        System.out.println(str3.toLowerCase());
        System.out.println(str3.trim());
        // 字符串截取
        System.out.println(str3.trim().substring(2));
        System.out.println(str3.trim().substring(2, 10));
        //字符串比较
        String str4 = "abcdef";
        String str5 = "abbdgf";
        System.out.println(str4.compareTo(str5));
    }
}

 

  练习:

题目一:实现trim方法的功能

思路:先判断给定字符串是否是以空格开头,如果是,从第二位截取剩余字符串,循环,得到开头没有空格的字符串,再判断是否以空格结尾,如果是,则从第0为开始,到第length-1位结束截取字符串,循环去掉尾部的空格

public class StringDemo {
    public static void main(String[] args) {
        String str = "   abcdef   ";
        StringDemo sd = new StringDemo();
        System.out.println(sd.trimDemo(str));
    }

    public String trimDemo(String str) {
        while (str.startsWith(" ")) {
            str = str.substring(1);
        }
        while (str.endsWith(" ")) {
            str = str.substring(0, str.length() - 1);
        }
        return str;
    }
}

 

题目二:翻转一个字符串

思路:先把字符串转换成一个字符数组,再新建一个空的同样长度的字符数组,依次将源字符数组翻转过来添加到新数组中,让新数组转化成字符串返回

public class StringDemo {
    public static void main(String[] args) {
        String str = "   abcdef   ";
        StringDemo sd = new StringDemo();
        System.out.println(sd.turnString("abcdef"));
    }

    public String turnString(String str) {

        char[] charArray = str.toCharArray();

        char[] newCharArray = new char[charArray.length];

        for (int i = 0; i < charArray.length; i++) {
            newCharArray[(charArray.length - i - 1)] = charArray[i];
        }

        return new String(newCharArray);
    }
}

 

JAVA String

标签:

原文地址:http://www.cnblogs.com/xs104/p/4660295.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!