字符串当中的常用方法之比较相关的方法

  • public boolean equals (object obj):将此字符串与指定的对象进行比较(只有参数是字符串并且内容相同才会返回true)
  • public boolean  equalsIgnoreCase(String anotherString):将此字符串与指定的对象进行比较,忽略大小写。

注意点:

  • 任何对象都可以用object接收
  • equals方法具有对称性,也就是a.equals(b) 等价于b.equals(a)
  • 如果比较双方一个常量一个变量,推荐常量字符串写在前面
  • 只有英文字母区分大小,其他都不区分大小写

代码举例:

public class StringTest1 {

    public static void main(String[] args) {
        String a1 = "abc";
        String a2 = "abc";
        char[] charArray = {'a', 'b', 'c'};
        String a3 = new String(charArray);
        String a4 = "Abc";
        // 比较字符串对象,(字符串对象且内容完全一样)
        System.out.println(a1.equals(a2));
        System.out.println(a1.equals(a3));
        System.out.println(a3.equals(a2));
        //区分大小写
        System.out.println(a1.equals(a4));
        // 不区分大小写
        System.out.println(a1.equalsIgnoreCase(a4));

    }
}

执行结果:

字符串当中的常用方法之获取相关的方法

  • public int length():返回此字符串的长度
  • public String concat(String str):将指定的字符串连接到该字符串的末尾
  • public char charAt(int index):返回指定索引出的char值
  • public int indexOf(String str):返回指定参数字符串第一次出现在该字符串内的索引
  • public String substring(int beginIndex):返回一个子字符串,从beginIndex开始截取字符串到字符串结尾
  • public String substring (intbeginIndex, int endIndex):返回一个子字符串,从beginIndex到endIndex截取字符串。(包含beginIndex,不包含 endIndex)

代码举例:

public class StringTest1 {
    public static void main(String[] args) {
        String s = "hello world";
        //获取字符串的长度
        System.out.println(s.length());
        // 合并成为新的字符串
        System.out.println(s.concat("java"));
        //返回索引位置为5的字符char
        System.out.println(s.charAt(6));
        //返回参数字符串,第一次在字符串中出现的索引,没有就返回-1
        System.out.println(s.indexOf("l"));
        System.out.println(s.indexOf("A"));
        //返回从索引位置3到末尾的子字符串
        System.out.println(s.substring(3));
        //返回从索引位置3到索引值位置6的子字符串
        System.out.println(s.substring(3, 7));
    }
}

执行结果:

字符串当中的常用方法之转换相关的方法

  • public char[ ] toCharArray():将此字符串转换为新的字符数组
  • public byte[ ] getBytes():使用平台的默认字符集将该String编码转换为新的字节数组
  • public String replace (CharSequence target,   CharSequence  replacement):将于target匹配的字符串,使用replacement字符串替换

代码举例:

public class StringTest1 {

    public static void main(String[] args) {
        String s1 = "acg,afg";
        //转换为字符数组
        char[] c = s1.toCharArray();
        //遍历数组
        for (int i = 0; i < c.length; i++) {
            System.out.println(c[i] + " ");
        }
        // 转换为字节数组
        byte[] b = s1.getBytes();
        // 把所有的ad,替换成为你好
        String s2 = s1.replace("af", "你好");
        System.out.println(s2);
    }
}

执行结果

字符串当中的常用方法之分割功能相关的方法

  • public  String[ ] split (String regex):将此字符串按照正则表达式的规则拆分成为字符串数组
public class StringTest1 {
    public static void main(String[] args) {
        String s1 = "1,2,3,4,5";
        // 分割字符串
        String[] s2 = s1.split(",");
        //遍历字符串数组
        for (int i = 0; i < s2.length; i++) {
            System.out.print(s2[i]);
        }
    }
}

执行结果

需求​

​​

代码实现:

import java.util.Scanner;

public class StringTest1 {
    public static void main(String[] args) {
        // 从键盘输入对象
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入您的字符串");
        String s = sc.next();
        // 定义变量存储对应的总数
        int conutUpper = 0;
        int countlower = 0;
        int conutNumber = 0;
        int countOther = 0;
        // 字符串转换为数组
        char[] c = s.toCharArray();
        //遍历数组
        for (int i = 0; i < c.length; i++) {
            if ('A' <= c[i] && c[i] <= 'Z') {
                conutUpper++;
            } else if ('a' <= c[i] && c[i] <= 'z') {
                countlower++;
            } else if ('0' <= c[i] && c[i] <= '9') {
                conutNumber++;
            } else {
                countOther++;

            }
        }
        System.out.println("大写字母总数是" + conutUpper);
        System.out.println("小写字母总数是" + countlower);
        System.out.println("数字总数是" + conutNumber);
        System.out.println("其他总数是" + countOther);

    }
}

执行结果

类String 常用方法的更多相关文章

  1. Java String类的常用方法

    String(byte[ ] bytes):通过byte数组构造字符串对象. String(char[ ] value):通过char数组构造字符串对象. String(Sting original) ...

  2. Java 中 String 类和StringBuilder 类的常用方法

    String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等,下面我们就来领略它的强大之处吧. String 类的常用方法: 结合代码 ...

  3. java 中String类的常用方法总结,带你玩转String类。

    String类: String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.String类对象创建后不能修改,StringBuffer & St ...

  4. JAVA之旅(十六)——String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较

    JAVA之旅(十六)--String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较 过节耽误了几天,我们继续JAVA之旅 一.String概述 String时 ...

  5. String类的常用方法总结

    一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创建 ...

  6. JAVA的String类的常用方法(转载)

    Java-String类的常用方法总结   一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的f ...

  7. Java修炼——String类_常用方法_常量池

    String类的定义:String 是不可变字符序列 String 类的常用方法(全部都是不能改变String本身的值,都是在常量池里输出,没有改变其值) String string="ab ...

  8. String 类的常用方法都有那些?(未完成)

    String 类的常用方法都有那些?(未完成)

  9. java 中String类的常用方法总结,玩转String类

    String类: String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.String类对象创建后不能修改,StringBuffer & St ...

随机推荐

  1. vue项目向小程序迁移调研

    概述 今天调研了一下vue项目怎么向小程序迁移,有些心得,记录下来,供以后开发时参考,相信对其他人也有用. 基本上vue项目向小程序迁移不外乎2种方法,一种是用小程序的web-view组件,另一种是用 ...

  2. 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二九║ Nuxt实战:异步实现数据双端渲染

    回顾 哈喽大家好!又是元气满满的周~~~二哈哈,不知道大家中秋节过的如何,马上又是国庆节了,博主我将通过三天的时间,给大家把项目二的数据添上(这里强调下,填充数据不是最重要的,最重要的是要配合着让大家 ...

  3. 学习Identity Server 4的预备知识 (误删, 重补)

    我要使用asp.net core 2.0 web api 搭建一个基础框架并立即应用于一个实际的项目中去. 这里需要使用identity server 4 做单点登陆. 下面就简单学习一下相关的预备知 ...

  4. 如何在ASP.NET Core程序启动时运行异步任务(2)

    原文:Running async tasks on app startup in ASP.NET Core (Part 2) 作者:Andrew Lock 译者:Lamond Lu 在我的上一篇博客中 ...

  5. C++与Lua交互之配置&交互原理&示例

    |Lua 简介 Lua 是一种轻量小巧的脚本语言,也是号称性能最高的脚本语言,它用C语言编写并以源代码形式开放. 某些程序常常需要修改内容,而修改的内容不仅仅是数据,更要修改很多函数的行为. 而修改函 ...

  6. centos7 安装 smplayer

    How to setup multimedia on CentOS 7 You will need to also install the EPEL repository as nux-dextop ...

  7. java锁与监视器概念 为什么wait、notify、notifyAll定义在Object中 多线程中篇(九)

    在Java中,与线程通信相关的几个方法,是定义在Object中的,大家都知道Object是Java中所有类的超类 在Java中,所有的类都是Object,借助于一个统一的形式Object,显然在有些处 ...

  8. 使用Atlas进行元数据管理之Type(类型)

    背景:笔者和团队的小伙伴近期在进行数据治理/元数据管理方向的探索, 在接下来的系列文章中, 会陆续与读者们进行分享在此过程中踩过的坑和收获. 元数据管理系列文章: [0] - 使用Atlas进行元数据 ...

  9. 你必须知道的.net读书笔记之第二回深入浅出关键字---对抽象编程:接口和抽象类

    请记住,面向对象思想的一个最重要的原则就是:面向接口编程. 借助接口和抽象类,23个设计模式中的很多思想被巧妙的实现了,我认为其精髓简单说来就是:面向抽象编程. 抽象类应主要用于关系密切的对象,而接口 ...

  10. 2.python中self详解(程序适用于python3版本)

    先介绍下Python中的类和实例面向对象最重要的概念就是类(class)和实例(instance),类(class)是抽象的模板,比如学生这个抽象的事物,可以用一个Student类来表示.而实例是根据 ...