Java中String类常用类型实例总结

 更新时间:2021年12月24日 09:44:17   作者:Fly upward  
在我们开发中经常会用到很多的常用的工具类,这里做一个总结,下面这篇文章主要给大家介绍了关于Java中String类常用类型的相关资料,String类代表字符串,需要的朋友可以参考下

1.创建字符串的方法

1.1构造

方式一、直接构造

String str = "fly";

方式二 、调用构造方法进行构造对象

String str1 = new String("name");

方式三、利用字符数组进行转换

char[] ch = {'a','s','d'};
String str2 = new String(ch);

1.2引用对象

    public static void main(String[] args) {
        //str 、 str1 都指向同一个对象
        String str = "asd";
        String str1 = str;
        System.out.println(str);
        System.out.println(str1);
        System.out.println("---------------");
 
        str = "fly";//str指向新的对象,str1 没有变,还指着原来的对象
        System.out.println(str);
        System.out.println(str1);
 
    }

 

    public static void func(String s,char[] array) {
        s = "fly";
        array[0] = 'm';
 
    }
 
    public static void main(String[] args) {
        String str = "asfgh";
        char[] ch = {'w','s','d'};
        func(str,ch);
        System.out.println(str);
        System.out.println(Arrays.toString(ch));
 
    }

 

 2.字符串的比较

    public static void main(String[] args) {
        String str1 = "hello";
        String str2 = "hello";
        System.out.println(str1 == str2);
        System.out.println(str1.equals(str2));
    }
    public static void main(String[] args) {
        String str1 = "ABC";
        String str2 = "abc";
        boolean flg = str1.equalsIgnoreCase(str2);//不看大小写判断字符串是否相等
        System.out.println(flg);
    }

3.字符串的不可改变性

字符串是一种不可变对象 . 它的内容不可改变

   public static void main(String[] args) {
        String str = "hello ";
        str = str + "world ";
        str += "!!!";
        System.out.println(str);
 
    }

4.数组转字符串

   public static void main(String[] args) {
        char[] val = {'a','b','c','d','f'};
        String str = new String(val);
        String str2 = new String(val,1,3);//区间变字符串
        System.out.println(str);
        System.out.println("------------");
 
        String str3 = "hello";
        char ch = str3.charAt(2);//获取下标字符
        System.out.println(ch);
 
        char[] chars = str3.toCharArray();//把str3指向的字符串变为数组
        System.out.println(Arrays.toString(chars));
 
 
    }

 5.判断是否是数字字符串  isNumberChar(  )

    public static boolean isNumberChar(String s) {
        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);//逐个获取字符
            boolean flg = Character.isDigit(c);//判断某个字符是不是数字
            if(flg == false) {
                return false;
            }
            /*if (c < '0' || c > '9') {
                return false;
            }*/
        }
        return true;
    }
 
    public static void main(String[] args) {
        String str = "0123456789";
        System.out.println(isNumberChar(str));
    }

 6.字节变字符串

    public static void main(String[] args) {
        byte[] bytes = {97,98,99,100};//字节对应的字母
        String str = new String(bytes);
        System.out.println(str);
 
        String str2 = new String(bytes,1,3);
        System.out.println(str2);
        System.out.println("-------------");
        String str3 = "flying";
        byte[] bytes1 = str3.getBytes();//获取字符对应的字节
        System.out.println(Arrays.toString(bytes1));//以数组形式输出
    }

 7.字符串的查找

    public static void main(String[] args) {
        String str = "babcdabcab";
        String str2 = "abc";
        boolean flg = str.contains(str2);//判断是否含有子字符串
        System.out.println(flg);
        System.out.println("-----------");
 
        int index = str.indexOf(str2);//找出子字符串第一次开始出现的位置
        System.out.println(index);
        System.out.println(str.lastIndexOf(str2,8));//从指定位置往前找
        System.out.println(str.startsWith("a"));//判断是否是以其字母开头的字符串
        System.out.println(str.startsWith("a",1));//判断某位置是否是该字母
        System.out.println(str.endsWith("ab"));//判断是否是以该字符串结尾
    }

8.字符的替换

    public static void main(String[] args) {
        String str = "babcdabcab";
        String ret = str.replace('a','f');//将所有字符a替换成f
        //String ret = str.replaceFirst('a','f');//将第一次出现的字符a替换成f
        System.out.println(ret);
    }

9.字符串的分割

9.1以单个符号来分割

    public static void main(String[] args) {
        String str = "name=fly&age=20";
        String[] strings = str.split("&");//以字符&分割
        for (String s:strings) {
           // System.out.println(s);
            String[] ss = s.split("=");//分割之后再以=分割
            for (String tmp:ss) {
                System.out.println(tmp);
            }
        }
 
    }

 9.2多个分隔符分割

    public static void main(String[] args) {
        String str3 = "fly%12&age#hello";
        String[] ret = str3.split("%|&|#");//多个分隔符分割,用|隔开
        for (String sss:ret) {
            System.out.println(sss);
        }
    }

 9.3特殊符号分割

1. 字符 "|","*","+" 都得加上转义字符,前面加上 "\".
2. 而如果是 "" ,那么就得写成 "\\".
3. 如果一个字符串中有多个分隔符,可以用 "|" 作为连字符 .
    public static void main(String[] args) {
        String str = "191.157.1.1";
        String[] result = str.split("\\.");
        for (String s:result) {
            System.out.println(s);
        }
 
        System.out.println("-------------");
        String str2 = "191\\157\\1\\1";
        String[] strings = str2.split("\\\\",3);//4是分为四组
        for (String ss:strings) {
            System.out.println(ss);
        }
 
        String str3 = "fly%12&age#hello";
        String[] ret = str3.split("%|&|#");//多个分隔符分割,用|隔开
        for (String sss:ret) {
            System.out.println(sss);
        }
 
    }

10.提取子串str.substring(  )

    public static void main(String[] args) {
        String str = "abcdefg";
        String sub = str.substring(2,4);//提取子串,左闭右开
        System.out.println(sub);
    }

 11.去空格

    public static void main(String[] args) {
        String str = "   abc  def   ";
        String ret = str.trim();//去除字符串左右两边的空格
        System.out.print(ret);
        System.out.println("---");
    }

12.字符串的拼接

    public static void main(String[] args) {
        String str = "abc";
        String ret = str.concat("fly");//字符串的拼接
        System.out.println(ret);
    }

13.StringBuffer  

13.1字符串的拼接

    public static void main(String[] args) {
        String str = "hello";
        StringBuffer sb = new StringBuffer();
        sb.append(str);
        for (int i = 0; i < 10; i++) {
            sb.append(i);
            str = sb.toString();
        }
        System.out.println(str);
    }

13.2方法的返回类型

    public static StringBuffer func() {
        String str = "fly";
        return new StringBuffer(str);
    }
    public static void main(String[] args) {
        System.out.println(func());
    }

总结

到此这篇关于Java中String类常用类型的文章就介绍到这了,更多相关Java String类常用类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java实现遍历Map的方法

    java实现遍历Map的方法

    这篇文章主要介绍了java实现遍历Map的方法,以简单实例形式分析了java针对HashMap的遍历技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09
  • Mac安装Maven的几种方法小结

    Mac安装Maven的几种方法小结

    本文主要介绍了Mac安装Maven的几种方法小结,主要包括通过Homebrew安装Maven,通过SDKMAN安装Maven和通过官方网站下载安装包安装Maven,感兴趣的可以了解一下
    2024-01-01
  • SpringBoot使用前缀树过滤敏感词的方法实例

    SpringBoot使用前缀树过滤敏感词的方法实例

    Trie也叫做字典树、前缀树(Prefix Tree)、单词查找树,特点:查找效率高,消耗内存大,这篇文章主要给大家介绍了关于SpringBoot使用前缀树过滤敏感词的相关资料,需要的朋友可以参考下
    2022-01-01
  • SpringBoot之QueryDsl嵌套子查询问题

    SpringBoot之QueryDsl嵌套子查询问题

    这篇文章主要介绍了SpringBoot之QueryDsl嵌套子查询问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • java针对电话号码正则匹配实例

    java针对电话号码正则匹配实例

    这篇文章主要介绍了java针对电话号码正则匹配的方法,涉及java正则匹配与字符串操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Spring Boot自动注入的原理分析

    Spring Boot自动注入的原理分析

    这篇文章主要给大家分析介绍了关于Spring Boot自动注入的原理,文中通过示例代码介绍的非常详细,对大家的学习或者使用Spring Boot自具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-10-10
  • SpringBoot多环境开发该如何配置

    SpringBoot多环境开发该如何配置

    这篇文章主要介绍了 SpringBoot多环境的开发配置详情,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-09-09
  • java内部类的最详细详解

    java内部类的最详细详解

    内部类是指在一个外部类的内部再定义一个类,下面这篇文章主要给大家介绍了关于java内部类的最详细详解,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • 教你怎么用Java实现给图片打上水印

    教你怎么用Java实现给图片打上水印

    这篇文章主要介绍了教你怎么用Java实现给图片打上水印,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Java比较两个对象大小的三种方法详解

    Java比较两个对象大小的三种方法详解

    在优先级队列中插入的元素必须能比较大小,如果不能比较大小,如插入两个学生类型的元素,会报ClassCastException异常。本文就为大家总结了Java比较两个对象大小的三种方法,需要的可以参考一下
    2022-07-07

最新评论