AI写作智能体 自主规划任务,支持联网查询和网页读取,多模态高效创作各类分析报告、商业计划、营销方案、教学内容等。 广告
在 Java 中,由于**基本数据类型**(如 `int`, `double`)本身没有方法,我们通常操作的是它们的**包装类**(如 `Integer`, `Double`)以及最常用的**引用数据类型**(如 `String`)。 以下是 Java 中最常用的几种数据类型及其高频方法的汇总: ### Java 常用数据类型方法汇总表 | **数据类型** | **常用方法** | **作用描述** | **示例** | | --- | --- | --- | --- | | **String** (字符串) | **`split(regex)`** | 按正则拆分为数组 | `"a,b".split(",")` | | | **`contains(seq)`** | 判断是否包含子串 | `str.contains("abc")` | | | **`replace(old, new)`** | 替换指定字符/串 | `str.replace("1", "A")` | | | **`substring(f, t)`** | 截取指定范围字符串 | `str.substring(0, 5)` | | | **`trim()`** | 去除首尾空格 | `" hello ".trim()` | | | **`isEmpty()` / `isBlank()`** | 判断是否为空(Java 11+) | `"".isEmpty()` | | **Integer** (包装类) | **`parseInt(str)`** | 将字符串解析为 int | `Integer.parseInt("123")` | | | **`valueOf(int/str)`** | 返回 Integer 对象 | `Integer.valueOf(10)` | | | **`compare(x, y)`** | 比较两个数的大小 | `Integer.compare(1, 2)` | | **List** (列表集合) | **`add(element)`** | 向集合添加元素 | `list.add("item")` | | | **`remove(index/obj)`** | 移除元素 | `list.remove(0)` | | | **`get(index)`** | 获取指定位置元素 | `list.get(2)` | | | **`size()`** | 返回集合元素个数 | `list.size()` | | | **`contains(obj)`** | 判断集合是否包含某物 | `list.contains("A")` | | **Map** (键值对) | **`put(key, val)`** | 存储键值对 | `map.put("id", 1)` | | | **`get(key)`** | 根据键获取值 | `map.get("id")` | | | **`getOrDefault(k, d)`** | 获取值,若无则返回默认 | `map.getOrDefault("a", 0)` | | | **`keySet()`** | 获取所有键的集合 | `map.keySet()` | | | **`containsKey(key)`** | 判断是否存在某个键 | `map.containsKey("id")` | | **Optional** (容器) | **`ofNullable(obj)`** | 允许为空的初始化 | `Optional.ofNullable(val)` | | | **`isPresent()`** | 判断是否有值 | `opt.isPresent()` | | | **`orElse(default)`** | 若为空则返回默认值 | `opt.orElse("N/A")` | * * * ### 💡 重点方法深度解析 #### 1\. 字符串拼接的性能选择 虽然 `String` 可以用 `+` 拼接,但在**循环**中,建议使用 `StringBuilder`: Java ~~~ StringBuilder sb = new StringBuilder(); for (String s : list) { sb.append(s); // 性能远高于 s1 + s2 } String result = sb.toString(); ~~~ #### 2\. List 与数组的互相转换 这是开发中最常见的操作,结合了 `Arrays` 工具类: Java ~~~ // 数组转 List String[] arr = {"A", "B"}; List<String> list = Arrays.asList(arr); // List 转 数组 String[] newArr = list.toArray(new String[0]); ~~~ #### 3\. Map 的便捷操作 (Java 8+) 以前需要写 `if (map.get(key) == null)`,现在一行搞定: Java ~~~ // 如果 key 不存在,就存入默认值 "Default",并返回该值 map.computeIfAbsent("name", k -> "Default"); ~~~ ### 总结建议 * **处理字符串:** 多用 `split`、`replace` 和 `trim`。 * **处理集合:** 熟练掌握 `size`、`add` 和 Java 8 的 `stream()`。 * **防御空指针:** 尝试使用 `Optional` 和 `Objects.equals()`。 这些方法配合你之前学到的 `Arrays` 工具类,几乎可以涵盖日常业务逻辑中 80% 的数据处理工作。你想了解如何利用 `Optional` 来优雅地处理你代码里的 `null` 判断吗?