JAVA String类中的一些常用方法示例详解

 更新时间:2023年10月08日 10:58:29   作者:休息一下…  
在我们的工作中,常常要对一个字符串进行一些操作,这里提供一些常用的方法,常常需要这些方法进行组合处理字符串,这篇文章主要给大家介绍了关于JAVA String类中的一些常用方法,需要的朋友可以参考下

字符串比较方法:

boolean equals(Object anObject):

比较两个字符串是否相等,相等返回ture,否则返回false

    public static void main(String[] args) {
        String a = "asdf";
        System.out.println(a.equals("aaa"));
        System.out.println(a.equals("asdf"));
    }

int compareTo(String s):

比较两个字符串是否相等,先按照字典次序大小比较,如果出现不等的字符,直接返回这两个字符的大小差值;如果前k个字符相等(k为两个字符长度最小值),返回两个字符串长度差值。

    public static void main(String[] args) {
        String a = "asdf";
        System.out.println(a.compareTo("aaa"));
        System.out.println(a.compareTo("asdf"));
        System.out.println(a.compareTo("asd"));
    }

int compareToIgnoreCase(String str)

忽略字符大小写进行比较,返回值规则为:

  • 先按照字典次序大小比较,如果出现不等的字符,直接返回这两个字符的大小差值
  • 如果前k个字符相等(k为两个字符长度最小值),返回两个字符串长度差值。
    public static void main(String[] args) {
        String a = "asdf";
        System.out.println(a.compareToIgnoreCase("aaa"));
        System.out.println(a.compareToIgnoreCase("ASDF"));
        System.out.println(a.compareToIgnoreCase("asd"));
    }

字符串查找方法:

char charAt(int index):

返回index位置上字符,如果index为负数或者越界,抛出IndexOutOfBoundsException异常。

    public static void main(String[] args) {
        String a = "asdf";
        System.out.println(a.charAt(0));
        System.out.println(a.charAt(3));
        System.out.println(a.charAt(5));
    }

int indexOf(int ch):

返回ch第一次出现的位置,没有则返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.indexOf('d'));
        System.out.println(a.indexOf('a'));
        System.out.println(a.indexOf('h'));
    }

int indexOf(int ch, int fromIndex):

从fromIndex位置开始找 ch 返回第一次出现的位置,没有返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.indexOf('d', 3));
        System.out.println(a.indexOf('a', 1));
        System.out.println(a.indexOf('h',0));
    }

int indexOf(String str):

返回str第一次出现的位置,没有返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.indexOf("dd"));
        System.out.println(a.indexOf("ss"));
    }

int indexOf(String str, int fromIndex):

从fromIndex位置开始找str第一次出现的位置,没有返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.indexOf("dd", 3));
        System.out.println(a.indexOf("ss", 0));
    }

int lastIndexOf(int ch):

后往前找返回ch第一次出现的位置,没有返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.lastIndexOf('d'));
        System.out.println(a.lastIndexOf('s'));
        System.out.println(a.lastIndexOf('v'));
    }

int lastIndexOf(int ch, int fromIndex):

从fromIndex位置开始找,从后往前找ch第一次出现的位置,没有返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.lastIndexOf('d', 2));
        System.out.println(a.lastIndexOf('d', 3));
        System.out.println(a.lastIndexOf('d', 4));
        System.out.println(a.lastIndexOf('g', 5));
    }

int lastIndexOf(String str):

从后往前找,返回str第一次出现的位置,没有返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.lastIndexOf("dd"));
        System.out.println(a.lastIndexOf("as"));
        System.out.println(a.lastIndexOf("bv"));
    }

int lastIndexOf(String str, int fromIndex):

从后往前找str第一次出现的位置,如果此位置的下标不大于fromIndex则返回,否则继续往前找。没有返回-1

    public static void main(String[] args) {
        String a = "asdddf";
        System.out.println(a.lastIndexOf("dd", 3));
        System.out.println(a.lastIndexOf("dd", 2));
        System.out.println(a.lastIndexOf("dd", 1));
        System.out.println(a.lastIndexOf("as", 0));
        System.out.println(a.lastIndexOf("bv", 0));
    }

字符串的转化

数字转字符串

字符串转整形

    public static void main(String[] args) {
        String str = "123";
        int a1 = Integer.parseInt(str);
        long a2 = Long.parseLong(str);
        System.out.println(a1+" "+a2);
    }

字符串转浮点型: 

    public static void main(String[] args) {
        String str = "123";
        double a2 = Double.parseDouble(str);
        float a3 = Float.parseFloat(str);
        System.out.println(a2+" "+a3);
    }

String.valueOf():

所有基本类型值转化为字符串类型

    public static void main(String[] args) {
        String s1 = String.valueOf(1234);
        String s2 = String.valueOf(12.34);
        String s3 = String.valueOf(true);
        String s4 = String.valueOf('a');
        System.out.println(s1);
        System.out.println(s2);
        System.out.println(s3);
        System.out.println(s4);
    }

String toUpperCase();

String toLowerCase():

返回一个将原字符串转为大写的新串 。

返回一个将原字符串转为小写的新串 。

    public static void main(String[] args) {
        String s1 = "heLLo";
        String s2 = "HEllO";
        System.out.println(s1.toUpperCase());
        System.out.println(s2.toLowerCase());
    }

char[] toCharArray();

String(char value[]):

将字符串转为数组;原字符串不会受到影响

将数组转为字符串;原数组不会受到影响

    public static void main(String[] args) {
        String s = "hello";
        char[] ch = s.toCharArray();
        System.out.println(Arrays.toString(ch));
        String s2 = new String(ch);
        System.out.println(s2);
    }

字符串替换方法:

String replaceAll(String regex, String replacement):

替换所有的指定内容

    public static void main(String[] args) {
        String str = "helloworld" ;
        System.out.println(str.replaceAll("l", "O"));
    }

String replaceFirst(String regex, String replacement)

替换首个内容

    public static void main(String[] args) {
        String str = "helloworld" ;
        System.out.println(str.replaceFirst("l", "O"));
    }

String[] split(String regex):

将字符串全部拆分

    public static void main(String[] args) {
        String str = "hello world hello" ;
        String[] result = str.split(" ") ; // 按照空格拆分
        for(String s: result) {
            System.out.println(s);
        }
    }

String substring(int beginIndex, int endIndex):

截取 [ beginIndex ,endIndex ) 范围内的字符串

    public static void main(String[] args) {
        String str = "helloworld" ;
        System.out.println(str.substring(0, 5));
    }

总结

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

相关文章

  • java短网址服务(TinyURL)生成算法

    java短网址服务(TinyURL)生成算法

    这篇文章主要为大家详细介绍了java短网址服务生成算法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08
  • Java继承方法重写实现原理及解析

    Java继承方法重写实现原理及解析

    这篇文章主要介绍了Java继承方法重写实现原理及解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 详解Java中Stream流的用法和原理

    详解Java中Stream流的用法和原理

    最近编码的时候用到了Stream这个东西,以前也用过,但是对它没有一个系统的认知,在好奇心的驱动下还是决定花一些时间去系统地学一学,不了解Stream的同学可以看看本文,对大家的学习和工作有一定的帮助
    2023-10-10
  • Java中File类方法详解以及实践

    Java中File类方法详解以及实践

    Java File类的功能非常强大,利用java基本上可以对文件进行所有操作,下面这篇文章主要给大家介绍了关于Java中File类方法以及实践的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • Java两大工具库Commons和Guava使用示例详解

    Java两大工具库Commons和Guava使用示例详解

    这篇文章主要为大家介绍了Java两大工具库Commons和Guava使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • java8 stream中Collectors.toMap空指针问题及解决

    java8 stream中Collectors.toMap空指针问题及解决

    这篇文章主要介绍了java8 stream中Collectors.toMap空指针问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Jmeter如何基于命令行运行jmx脚本

    Jmeter如何基于命令行运行jmx脚本

    这篇文章主要介绍了Jmeter如何基于命令行运行jmx脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Windows中使用Java生成Excel文件并插入图片的方法

    Windows中使用Java生成Excel文件并插入图片的方法

    这篇文章主要介绍了Windows中使用Java生成Excel文件并插入图片的方法,其中向Excel中插入图片文中通过使用Apache POI来实现,需要的朋友可以参考下
    2016-02-02
  • Java实现的质因数分解操作示例【基于递归算法】

    Java实现的质因数分解操作示例【基于递归算法】

    这篇文章主要介绍了Java实现的质因数分解操作,结合实例形式较为详细的分析了Java基于递归算法实现针对整数的质因数分解相关操作技巧,需要的朋友可以参考下
    2018-03-03
  • Kafka源码系列教程之删除topic

    Kafka源码系列教程之删除topic

    这篇文章主要给大家介绍了关于Kafka源码系列教程之删除topic的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08

最新评论