目录

一、API 是什么?—— 理解 “开发者的工具箱”

核心本质与价值

Java API 的范围

二、Java 常用核心 API 分类与实战示例

1. 字符串操作 API:java.lang.String 与 StringBuilder

用途

核心类与常用方法

实战示例

2. 数学运算 API:java.lang.Math

用途

常用方法与示例

实战示例:生成 1-100 的随机整数

3. 数组操作 API:java.util.Arrays

用途

常用方法与示例

实战示例:数组排序与查找

4. 日期时间 API:java.time 包(Java 8+ 推荐)

用途

核心类与常用方法

实战示例:获取当前日期并计算 30 天后的日期

5. 集合 API:java.util 包(List、Map)

用途

核心集合类与常用方法

实战示例:用 ArrayList 存学生姓名,HashMap 存学生成绩

6. 输入输出 API:java.util.Scanner

用途

常用方法与示例

运行效果

三、如何高效使用 Java API 帮助文档?

1. 第一步:获取 Java API 帮助文档

途径 1:Oracle 官方在线文档(推荐)

途径 2:IDE 集成文档(便捷)

途径 3:本地离线文档

2. 第二步:查询 API 的标准步骤(以 “查 String 的 substring 方法” 为例)

步骤 1:确定要查询的 “包” 和 “类”

步骤 2:查看类的 “整体说明”

步骤 3:定位要查询的 “方法”

步骤 4:分析方法的 “关键信息”

示例:查 substring(2,7) 的效果

3. 第三步:关注文档中的 “关键标记”

4. 实战练习:查 Arrays.sort(int[] a) 方法


一、API 是什么?—— 理解 “开发者的工具箱”

API(Application Programming Interface,应用程序编程接口)在 Java 中,本质是 JDK 预定义的 “代码工具箱”—— 包含大量封装好的类、接口和方法,开发者无需编写底层逻辑,直接调用即可实现特定功能。

核心本质与价值

  • “不用造轮子”:比如要实现字符串截取、数组排序、日期计算等功能,Java API 已提供现成方法,无需自己编写底层算法;
  • 标准化与稳定性:API 由 Oracle 官方维护,方法逻辑严谨、兼容性强,避免开发者自行编写代码导致的 bug;
  • 降低开发成本:通过调用 API,将精力集中在业务逻辑上,而非基础功能实现,大幅提升开发效率。

Java API 的范围

Java API 涵盖 Java SE 核心类库(如 java.langjava.util 包)、Java EE 企业级类库(如 javax.servlet)等,其中 Java SE 核心 API 是所有 Java 开发的基础,也是本次汇报的重点。

二、Java 常用核心 API 分类与实战示例

Java SE 核心 API 按功能可分为多个类别,以下选取最常用、最基础的 6 类 API,结合用途、常用方法及代码示例说明:

1. 字符串操作 API:java.lang.String 与 StringBuilder

用途

处理文本数据(如字符串比较、截取、拼接、替换等),是开发中最频繁使用的 API 之一。

核心类与常用方法
类名 特点 常用方法
String 不可变字符串(线程安全) equals()(比较内容)、substring()(截取)、indexOf()(找字符位置)、trim()(去空格)
StringBuilder 可变字符串(效率高) append()(拼接)、reverse()(反转)、delete()(删除)、toString()(转 String)
实战示例
public class StringApiDemo {
    public static void main(String[] args) {
        // 1. String 常用方法
        String str = "  Hello, Java API!  ";
        System.out.println(str.equals("Hello, Java API!")); // false(有空格)
        System.out.println(str.trim()); // "Hello, Java API!"(去空格)
        System.out.println(str.substring(2, 7)); // "Hello"(截取索引2-6的字符)
        
        // 2. StringBuilder 常用方法(拼接效率比 String 高)
        StringBuilder sb = new StringBuilder();
        sb.append("Java").append(" ").append("is").append(" ").append("easy!");
        System.out.println(sb); // "Java is easy!"
        System.out.println(sb.reverse()); // "!ysae si avaJ"(反转)
    }
}

2. 数学运算 API:java.lang.Math

用途

提供基础数学运算(如绝对值、三角函数、随机数、最值计算等),无需自己实现数学算法。

常用方法与示例
方法名 功能 示例代码 输出结果(示例)
Math.abs(x) 求绝对值 Math.abs(-5) 5
Math.max(a,b) 求两数最大值 Math.max(3, 7) 7
Math.min(a,b) 求两数最小值 Math.min(3, 7) 3
Math.random() 生成 [0.0,1.0) 随机数 (int)(Math.random()*10) 0-9 的随机整数
Math.sqrt(x) 求平方根 Math.sqrt(16) 4.0
实战示例:生成 1-100 的随机整数
public class MathApiDemo {
    public static void main(String[] args) {
        // 公式:[min, max] 的随机整数 = (int)(Math.random()*(max - min + 1) + min)
        int randomNum = (int)(Math.random() * 100 + 1); 
        System.out.println("1-100 的随机整数:" + randomNum);
    }
}

3. 数组操作 API:java.util.Arrays

用途

简化数组操作(如排序、查找、打印数组、填充数组等),避免手动编写排序算法(如冒泡排序)。

常用方法与示例
方法名 功能 示例代码 效果
Arrays.sort(arr) 对数组升序排序 int[] arr = {3,1,2}; Arrays.sort(arr); arr 变为 [1,2,3]
Arrays.toString(arr) 将数组转为字符串(便于打印) System.out.println(Arrays.toString(arr)); 输出 [1,2,3]
Arrays.binarySearch(arr, key) 二分查找数组中的元素(需先排序) Arrays.binarySearch(arr, 2); 返回索引 1(找不到返回负数)
Arrays.fill(arr, val) 用指定值填充数组 Arrays.fill(arr, 0); arr 变为 [0,0,0]
实战示例:数组排序与查找
import java.util.Arrays;

public class ArraysApiDemo {
    public static void main(String[] args) {
        int[] scores = {85, 92, 78, 95, 88};
        
        // 1. 排序
        Arrays.sort(scores);
        System.out.println("排序后:" + Arrays.toString(scores)); // [78, 85, 88, 92, 95]
        
        // 2. 二分查找(找92的位置)
        int index = Arrays.binarySearch(scores, 92);
        System.out.println("92 的索引:" + index); // 3
    }
}

4. 日期时间 API:java.time 包(Java 8+ 推荐)

用途

处理日期、时间(如获取当前日期、计算日期差、格式化时间等),替代旧版的 Date 类(旧类存在线程安全问题)。

核心类与常用方法
类名 功能 常用方法
LocalDate 处理日期(年 / 月 / 日) now()(获取当前日期)、plusDays(n)(加 n 天)、getYear()(获取年)
LocalTime 处理时间(时 / 分 / 秒) now()(获取当前时间)、plusHours(n)(加 n 小时)、getMinute()(获取分)
LocalDateTime 处理日期 + 时间 结合 LocalDate 和 LocalTime 的功能,支持格式化(format()
实战示例:获取当前日期并计算 30 天后的日期
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class DateTimeApiDemo {
    public static void main(String[] args) {
        // 1. 获取当前日期
        LocalDate today = LocalDate.now();
        System.out.println("当前日期:" + today); // 2025-09-08(示例输出,实际为当前日期)
        
        // 2. 计算30天后的日期
        LocalDate nextMonth = today.plusDays(30);
        System.out.println("30天后:" + nextMonth);
        
        // 3. 格式化日期(自定义格式)
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日");
        String formattedToday = today.format(formatter);
        System.out.println("格式化后:" + formattedToday); // 2025年09月08日
    }
}

5. 集合 API:java.util 包(List、Map)

用途

存储多个数据(替代数组的局限性,如长度可动态变化),是开发中存储批量数据的核心工具。

核心集合类与常用方法
集合类 特点 常用方法
ArrayList 动态数组(查询快) add()(添加元素)、get(index)(获取元素)、size()(获取长度)、remove(index)(删除)
HashMap 键值对存储(查询快) put(key, value)(存键值对)、get(key)(根据键取值)、containsKey(key)(判断键是否存在)
实战示例:用 ArrayList 存学生姓名,HashMap 存学生成绩
import java.util.ArrayList;
import java.util.HashMap;

public class CollectionApiDemo {
    public static void main(String[] args) {
        // 1. ArrayList 存学生姓名
        ArrayList<String> students = new ArrayList<>();
        students.add("张三");
        students.add("李四");
        students.add("王五");
        System.out.println("学生列表:" + students); // [张三, 李四, 王五]
        System.out.println("第二个学生:" + students.get(1)); // 李四
        
        // 2. HashMap 存学生成绩(键:姓名,值:分数)
        HashMap<String, Integer> scores = new HashMap<>();
        scores.put("张三", 90);
        scores.put("李四", 85);
        System.out.println("张三的成绩:" + scores.get("张三")); // 90
        System.out.println("是否有王五的成绩:" + scores.containsKey("王五")); // false
    }
}

6. 输入输出 API:java.util.Scanner

用途

获取用户从控制台的输入(如输入姓名、年龄、成绩等),是简单交互程序的常用工具。

常用方法与示例
import java.util.Scanner;

public class ScannerApiDemo {
    public static void main(String[] args) {
        // 1. 创建 Scanner 对象(关联控制台输入)
        Scanner scanner = new Scanner(System.in);
        
        // 2. 获取用户输入(字符串、整数)
        System.out.print("请输入姓名:");
        String name = scanner.next(); // 获取字符串
        
        System.out.print("请输入年龄:");
        int age = scanner.nextInt(); // 获取整数
        
        // 3. 输出结果
        System.out.println("你好," + name + "!你今年" + age + "岁。");
        
        // 4. 关闭 Scanner(避免资源泄漏)
        scanner.close();
    }
}
运行效果
请输入姓名:张三
请输入年龄:18
你好,张三!你今年18岁。

三、如何高效使用 Java API 帮助文档?

API 帮助文档是 “开发者的字典”,当不知道某个类的用法、方法参数或返回值时,查文档是最直接的方式。以下分 “文档获取”“查询步骤”“关键关注点” 三部分讲解:

1. 第一步:获取 Java API 帮助文档

途径 1:Oracle 官方在线文档(推荐)
  • 地址:Java SE 17 Documentation(根据使用的 JDK 版本选择,如 JDK 8、17)
  • 优势:官方最新、最权威,包含所有类和方法的详细说明。
途径 2:IDE 集成文档(便捷)
  • 在 IntelliJ IDEA/Eclipse 中,选中类名或方法名,按 Ctrl + Q(IDEA)/ F2(Eclipse),即可查看该类 / 方法的文档摘要,无需打开浏览器。
途径 3:本地离线文档
  • 下载地址:Oracle 官网的 Java SE 下载页(找到 “Documentation” 选项,下载 ZIP 包,解压后打开 index.html 即可离线浏览)。

2. 第二步:查询 API 的标准步骤(以 “查 String 的 substring 方法” 为例)

步骤 1:确定要查询的 “包” 和 “类”
  • 首先明确类所在的包(如 String 在 java.lang 包,Arrays 在 java.util 包);
  • 在文档左侧 “Package” 列表中找到对应包(如 java.lang),展开后找到目标类(如 String),点击进入类的详情页。
步骤 2:查看类的 “整体说明”
  • 类详情页顶部的 “Class String” 下方,会有该类的用途说明(如 “Strings are constant; their values cannot be changed after they are created.”),明确类的核心特性(如 String 是不可变的)。
步骤 3:定位要查询的 “方法”
  • 页面中部的 “Method Summary”(方法摘要)列出了该类的所有方法,按方法名排序;
  • 找到目标方法(如 substring(int beginIndex, int endIndex)),点击方法名进入 “Method Detail”(方法详情)。
步骤 4:分析方法的 “关键信息”
  • 方法签名:明确参数类型、返回值类型(如 substring 的参数是 beginIndex(开始索引)和 endIndex(结束索引),返回值是 String);
  • 参数说明:每个参数的含义(如 beginIndex 是 “the beginning index, inclusive”(包含开始索引),endIndex 是 “the ending index, exclusive”(不包含结束索引));
  • 返回值说明:方法返回什么结果(如 “a substring of this string”);
  • 异常说明:方法可能抛出的异常(如 IndexOutOfBoundsException,当索引越界时抛出);
  • 示例:部分方法会有使用示例,帮助理解用法。
示例:查 substring(2,7) 的效果
  • 根据文档说明,"HelloWorld".substring(2,7) 会截取从索引 2(包含)到 7(不包含)的字符,结果是 "lloWo"

3. 第三步:关注文档中的 “关键标记”

  • Deprecated:标记为 “过时” 的方法(如 Date 类的 getYear() 方法),不建议使用,文档会提示替代方法;
  • static:静态方法,无需创建对象,直接用 “类名。方法名” 调用(如 Math.random());
  • throws:方法可能抛出的异常,需考虑异常处理(如 Scanner 的 nextInt() 可能抛出 InputMismatchException)。

4. 实战练习:查 Arrays.sort(int[] a) 方法

  1. 打开 Java API 文档,找到 java.util 包下的 Arrays 类;
  2. 在 “Method Summary” 中找到 sort(int[] a) 方法,点击进入详情;
  3. 查看说明:“Sorts the specified array into ascending numerical order.”(将数组按升序排序);
  4. 确认参数:int[] a(要排序的 int 数组),无返回值(void);
  5. 查看异常:NullPointerException(若数组为 null,抛出空指针异常);
  6. 结合示例使用:int[] arr = {3,1,2}; Arrays.sort(arr);,数组变为 [1,2,3]。

如果我的内容对你有帮助,请点赞,评论,收藏。接下来我将继续更新相关内容!

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐