news 2026/4/23 18:35:24

java 判断string[]中是否有a

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
java 判断string[]中是否有a

在 Java 中判断字符串数组是否包含特定字符串,有几种常见方法:

方法1:使用 Arrays.asList() 和 contains()

import java.util.Arrays; String[] array = {"a", "b", "c"}; boolean containsA = Arrays.asList(array).contains("a"); System.out.println(containsA); // 输出 true

方法2:使用循环遍历

String[] array = {"a", "b", "c"}; boolean found = false; for (String str : array) { if ("a".equals(str)) { found = true; break; } } System.out.println(found); // 输出 true

方法3:使用 Java 8+ Stream API

import java.util.Arrays; String[] array = {"a", "b", "c"}; boolean containsA = Arrays.stream(array) .anyMatch("a"::equals); System.out.println(containsA); // 输出 true

方法4:完整示例(包含 null 安全处理)

import java.util.Arrays; public class StringArrayCheck { public static void main(String[] args) { String[] array = {"apple", "banana", "a", "cherry"}; // 方法1:Arrays.asList System.out.println("方法1: " + Arrays.asList(array).contains("a")); // 方法2:传统循环 boolean found = false; for (String s : array) { if ("a".equals(s)) { // 使用 "a".equals(s) 避免 NPE found = true; break; } } System.out.println("方法2: " + found); // 方法3:Stream API System.out.println("方法3: " + Arrays.stream(array).anyMatch("a"::equals)); } }

注意事项:

  1. 空指针安全:使用"a".equals(str)而不是str.equals("a"),避免 str 为 null 时抛出异常

  2. 性能考虑

    • 小数组:哪种方法差异不大

    • 大数组:方法1(Arrays.asList)更高效

  3. 区分大小写:如果需要忽略大小写:

// 忽略大小写比较 String[] array = {"A", "b", "c"}; boolean containsA = Arrays.stream(array) .anyMatch(s -> s != null && s.equalsIgnoreCase("a")); System.out.println(containsA); // 输出 true

推荐用法:

  • 大多数情况:方法1(简洁高效)

  • 需要额外逻辑处理:方法3(Stream API)

  • 老版本Java或简单场景:方法2(传统循环)

选择哪种方法取决于你的具体场景和Java版本。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 5:27:42

基于微信小程序的驾校预约与学习系统

博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、php、爬虫、web开发,已经做了多年的设计程序开发,开发过上千套设计程序,没有什么华丽的语言,只有实…

作者头像 李华
网站建设 2026/4/23 5:29:00

Flutter 本地存储方案:SharedPreferences、SQFlite 与 Hive

Flutter 本地存储方案:SharedPreferences、SQFlite 与 Hive 在 Flutter 应用开发中,本地存储是实现数据持久化的核心需求,广泛应用于保存用户配置、缓存网络数据、存储离线信息等场景。当前 Flutter 生态中,SharedPreferences、S…

作者头像 李华
网站建设 2026/4/23 5:27:17

RLHF微调场景

🍋🍋AI学习🍋🍋🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主…

作者头像 李华
网站建设 2026/4/22 10:14:23

ThinkPad终极散热指南:双风扇智能控制完全教程

ThinkPad终极散热指南:双风扇智能控制完全教程 【免费下载链接】TPFanCtrl2 ThinkPad Fan Control 2 (Dual Fan) for Windows 10 and 11 项目地址: https://gitcode.com/gh_mirrors/tp/TPFanCtrl2 还在为ThinkPad风扇噪音而烦恼吗?TPFanCtrl2是一…

作者头像 李华
网站建设 2026/4/23 5:27:44

我发现图神经网络补全罕见病知识图谱基层漏诊率骤降

📝 博客主页:Jax的CSDN主页 目录医生打字慢到怀疑人生?AI医生竟成“键盘侠”救星 一、当AI医生遇上人类医生:一场效率革命 二、AI医生的"作弊"秘籍:从打字小能手到诊断大师 三、AI医生的成长烦恼&#xff1a…

作者头像 李华
网站建设 2026/4/23 5:27:39

基于Stanley算法的自动驾驶车辆路径跟踪控制研究

摘要:随着自动驾驶技术的快速发展,车辆路径跟踪控制已成为自动驾驶系统中的关键研究内容之一。针对自动驾驶车辆在已知参考轨迹条件下的路径跟踪问题,本文基于车辆运动学自行车模型,研究并实现了一种基于 Stanley 算法 的车辆路径…

作者头像 李华