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

java 中的String类型

时间:2016-03-07 19:12:24      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:

java 中的String类型
   (1)String类型的数据可以表示所有的数据类型。

   (2)String中的字符串常量与一般的字符串:
                String str0 = "hello";//字符串常量“hello”被预先放到了数据段的字符串常量池中
                String str1 = "hello";//直接从常量池中寻找已有的字符串常量
                String str2 = new String("hello");//new出一个新的字符串对象,在堆中
                String str3 = new String("hello");//new出一个新的字符串对象,在堆中
                System.out.println(str0 == str1);//打印true
                System.out.println(str2 == str3);//打印false
                System.out.println(str2.equals(str3));//打印true
        
        //String类型对象(不管是常量池对象还是在堆中对象,其内容都不可变)
        str3 = str2;
        str2 = "world";
        System.out.println(str3);//打印的依然是字符串hello
   (3)对于String str2 = new String("hello");产生了两个字符串对象(hello与str),产生了三个对象(两个字符串对象,一个Class对象)。

   (4)字符串中常用的方法:

          //字符串比较equals、equalsIgnoreCase、compareTo、compareToIgnoreCase

        System.out.println("hello".equals("hello"));//判断两个字符串是否相等-----打印true

        System.out.println(“hello”.equalsIgnoreCase("HeLLo"));//忽略大小写比较相等---打印true

        System.out.println("hello".compareTo("world"));//字符串比较:先依次比较第一个不同字母的Ascii码差值,                                                               //如果全部相同再比字符串长度----打印-15

        System.out.println("hello".compareToIgnoreCase("helloworld"));
        
        //字符串中与字符数组有关的方法

        System.out.println(str0.length());//字符串长度

        System.out.println(str0.charAt(0));//字符串第几个位置是什么字符

        char[] strArray = str0.toCharArray();//把一个字符串转换为字符数组
        for(char tmp : strArray){
            System.out.println(tmp);
        }
    
        byte[] b = str0.getBytes();//把一个字符串转换为字节数组

        System.out.println(str0.indexOf(‘l‘));//某个字符在字符串中首次出现的下标

                System.out.println(str0.indexOf(‘l‘,3));//某个字符串从指定下标开始查看某个字符首次出现的下标。

        System.out.println(str0.lastIndexOf(‘l‘));//某个字符在字符串中最后一次出现的下标
        
      //字符串内容相关的方法

        System.out.println(str0.toUpperCase());//转换为全大写

        System.out.println(str0.toLowerCase());//转换为全小写

        System.out.println(str0.startsWith("wor"));//判断字符串以什么开头

        System.out.println(str0.endsWith("lo"));//判断字符串以什么结尾

        System.out.println(str0.contains("ell"));//判断一个字符串是否在另一个字符串中--包含

        System.out.println(str0.concat("world"));//将一个字符串加到另一个字符串尾部

        System.out.println(str0.replace(‘l‘,‘L‘));//将字符串中的某个字符替换成新字符

        System.out.println(str0.replace("l","fuck"));//将字符串中的某个子串替换成新的子串

        System.out.println(str0.substring(1,3));//字符串按位置进行截取,前闭后开的区间

        System.out.println(str0.substring(2));//字符串从这个位置开始截取。

    //字符串中的trim()方法:

                 System.out.println("  hello    world  ".trim());//去掉前后的空格————-打印结果:hello    world


   //字符串中的split()方法:
    
                String date = "2016-03-02";
                String[] result = date.split("-");//split内的参数为正则表达式。单纯的?应该写为“\\?”
                for(String a : result){
                 System.out.println(a);
                }


                   运行结果:
                      2016
                      03
                      02


            若date = “-03-02”;打印的结果为:
                      03
                      02
            此时的result的长度依然是3,不过一个是空串。String a = "";(空串)   String a = null;(为空)

            所以判断字符串是否有效:if(str != null && !(str.trim().equals("")))----两个的位置还不能调换,否则会报空指针异常。

java 中的String类型

标签:

原文地址:http://www.cnblogs.com/wskaiit/p/5251302.html

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