【JAVA基础】String类常用API

简介: 1.String类常用API-遍历、替换、截取、分割操作2.综合案例 2.模拟用户登录功能3.手机号码屏蔽

1.String类常用API-遍历、替换、截取、分割操作


String常用API


方法名 说明


public int length() 返回此字符串的长度


public char charAt(int index) 获取某个索引位置处的字符


public char[] toCharArray(): 将当前字符串转换成字符数组返回


public String substring(int beginIndex, int endIndex) 根据开始和结束索引进行截取,得到新的字符串(包前不包后)


public String substring(int beginIndex) 从传入的索引处截取,截取到末尾,得到新的字符串


public String replace(CharSequence target,

CharSequence replacement)


使用新值,将字符串中的旧值替换,得到新的字符串


public String[] split(String regex) 根据传入的规则切割字符串,得到字符串数组返回

public int length() 返回此字符串的长度  


public char charAt(int index) 获取某个索引位置处的字符

    public static void main(String[] args) {
        String name="热爱编程的小白白";
        //返回此字符串的长度
        System.out.println(name.length());
        //获取某个索引位置处的字符
        System.out.println(name.charAt(1));
        System.out.println("---------------遍历字符串--------------------");
        for (int i = 0; i < name.length(); i++) {
            System.out.println(name.charAt(i));
        }
    }

public char[] toCharArray():将当前字符串转换成字符数组返回

   public static void main(String[] args) {
        String name="热爱编程的小白白";
        //将当前字符串转换成字符数组返回
        char[] chars = name.toCharArray();
        for (int i = 0; i < chars.length; i++) {
            System.out.println(chars[i]);
        }
    }

public String substring(int beginIndex, int endIndex)

根据开始和结束索引进行截取,得到新的字符串(包前不包后)

 public static void main(String[] args) {
        String name="热爱编程的小白白";
        //根据开始和结束索引进行截取,得到新的字符串(包前不包后)
        System.out.println("-------------------------------------");
        System.out.println(name.substring(0, 2));
        System.out.println("-------------------------------------");
        System.out.println(name.substring(5, 8));
    }

public String substring(int beginIndex)    

从传入的索引处截取,截取到末尾,得到新的字符串

   public static void main(String[] args) {
        String name="热爱编程的小白白";
        //从传入的索引处截取,截取到末尾,得到新的字符串
        System.out.println(name.substring(5));
    }

public String replace(CharSequence target, CharSequence replacement)

使用新值,将字符串中的旧值替换,得到新的字符串

    public static void main(String[] args) {
        String name="如果明天下雨,那么明天就不用上课了";
        System.out.println("原来的字符串:");
        System.out.println(name);
        System.out.println("----------------------------------");
        //使用新值,将字符串中的旧值替换,得到新的字符串
        System.out.println("替换后的的字符串:");
        System.out.println(name.replace("明天", "后天"));
    }

public boolean contains(CharSequence s)


当且仅当此字符串包含指定的char值序列时才返回true。

    public static void main(String[] args) {
        String name="如果明天下雨,那么明天就不用上课了";
        System.out.println(name.contains("上课"));//true
        System.out.println(name.contains("那么"));//true
        System.out.println(name.contains("11"));//false
    }

public boolean startsWith(String prefix)


测试此字符串是否以指定的前缀开头

   public static void main(String[] args) {
        String name="如果明天下雨,那么明天就不用上课了";
        //测试此字符串是否以指定的前缀开头。
        System.out.println(name.startsWith("如果"));//true
        System.out.println(name.startsWith("明天"));//false
    }

public String[] split(String regex)


根据传入的规则切割字符串,得到字符串数组返回

    public static void main(String[] args) {
        String name="1,2,3,4,5,6,7,8,9";
        String[] arr = name.split(",");
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }


2.综合案例


1.String类开发验证码功能



需求:


随机产生一个 5 位的验证码,每位可能是数字、大写字母、小写字母。


分析:


① 定义一个 String 类型的变量存储验 a-zA-Z0-9 之间的全部字符。


② 循环 5 次,随机一个范围内的索引,获取对应字符连接起来即可。

public class base {
    public static void main(String[] args) {
        /**
         * 需求:
         * 随机产生一个5位的验证码,每位可能是数字、大写字母、小写字母。
         * 分析:
         * ① 定义一个String类型的变量存储验a-zA-Z0-9之间的全部字符。
         * ② 循环5次,随机一个范围内的索引,获取对应字符连接起来即可。
         */
        String datas="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        char[] array = datas.toCharArray();
        Random random = new Random();
        for (int i = 0; i <5 ; i++) {
          int index = random.nextInt(array.length);
            System.out.print(array[index]);
        }
    }

2.模拟用户登录功能


需求:


模拟用户登录功能,最多只给三次机会。


分析:


① 系统后台定义好正确的登录名称,密码。


② 使用循环控制三次,让用户输入正确的登录名和密码,判断是否登录成功,登

录成功则不再进行登录;登录失败给出提示,并让用户继续登录。


    public static void main(String[] args) {
        /**
         * 需求:
         * 模拟用户登录功能,最多只给三次机会。
         * 分析:
         * ① 系统后台定义好正确的登录名称,密码。
         * ② 使用循环控制三次,让用户输入正确的登录名和密码,判断是否登录成功,登
         * 录成功则不再进行登录;登录失败给出提示,并让用户继续登录。
         */
        String username="root";
        String password="1234";
        Scanner scanner = new Scanner(System.in);
        for (int j=3;j>0;j--) {
            System.out.println("请输入账号");
            String userName = scanner.next();
            System.out.println("请输入密码");
            String passWord = scanner.next();
            if (username.equals(userName)&&password.equals(passWord)){
                System.out.println("登录成功");
                break;
            }
            else System.out.println("登录失败,你还剩"+(j-1)+"次机会");
        }
    }

3.手机号码屏蔽


需求

键盘录入一个手机号,将中间四位号码屏蔽,最终效果为:


分析

① 键盘录入一个字符串。


② 调用字符串对象的截取API,截取字符串前三位、后四位。


③ 将前三位 连接“****”然后继续连接后四位,输出最终结果即可。


    public static void main(String[] args) {
        System.out.println("请输入手机号");
        Scanner scanner = new Scanner(System.in);
        String phone_Number = scanner.next();
        String number1 = phone_Number.substring(0, 3);
        String number2 = phone_Number.substring(7, 11);
        System.out.println(number1+"****"+number2);
    }
相关文章
|
5天前
|
Java 大数据 API
Java Stream API:现代集合处理与函数式编程
Java Stream API:现代集合处理与函数式编程
165 100
|
5天前
|
Java API 数据处理
Java Stream API:现代集合处理新方式
Java Stream API:现代集合处理新方式
158 101
|
1月前
|
存储 Java API
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
312 188
|
1月前
|
存储 Java API
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
226 92
|
5天前
|
并行计算 Java 大数据
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
|
8天前
|
安全 Java API
使用 Java 构建强大的 REST API 的四个基本技巧
本文结合探险领域案例,分享Java构建REST API的四大核心策略:统一资源命名、版本控制与自动化文档、安全防护及标准化异常处理,助力开发者打造易用、可维护、安全可靠的稳健API服务。
64 2
|
16天前
|
存储 数据可视化 Java
Java Stream API 的强大功能
Java Stream API 是 Java 8 引入的重要特性,它改变了集合数据的处理方式。通过声明式语法,开发者可以更简洁地进行过滤、映射、聚合等操作。Stream API 支持惰性求值和并行处理,提升了代码效率和可读性,是现代 Java 开发不可或缺的工具。
Java Stream API 的强大功能
|
1月前
|
安全 Java API
Java日期时间API:从Date到Java.time
本文深入解析了Java 8中引入的全新日期时间API,涵盖LocalDate、LocalTime、LocalDateTime、ZonedDateTime等核心类的使用,以及时间调整、格式化、时区处理和与旧API的互操作。通过实例对比,展示了新API在可变性、线程安全与易用性方面的显著优势,并提供迁移方案与实战技巧,助你掌握现代Java时间处理的最佳实践。
|
1月前
|
存储 NoSQL Java
Java Stream API:集合操作与并行处理
Stream API 是 Java 8 提供的集合处理工具,通过声明式编程简化数据操作。它支持链式调用、延迟执行和并行处理,能够高效实现过滤、转换、聚合等操作,提升代码可读性和性能。
|
1月前
|
JSON Java API
【干货满满】分享拼多多API接口到手价,用Java语言实现
本方案基于 Java 实现调用拼多多开放平台商品详情 API,通过联盟接口获取商品到手价(含拼团折扣与优惠券),包含签名生成、HTTP 请求及响应解析逻辑,适用于电商比价、导购系统集成。

热门文章

最新文章