Java常用类库

Java常用类库

      • [1. **Java基础类库**](#1. Java基础类库)
        • [1.1 **`java.lang`**](#1.1 java.lang)
        • [1.2 **`java.util`**](#1.2 java.util)
        • [1.3 **`java.io`**](#1.3 java.io)
        • [1.4 **`java.nio`**](#1.4 java.nio)
        • [1.5 **`java.time`**](#1.5 java.time)
      • [2. **第三方类库**](#2. 第三方类库)
        • [2.1 **Apache Commons**](#2.1 Apache Commons)
        • [2.2 **Google Guava**](#2.2 Google Guava)
        • [2.3 **Jackson**](#2.3 Jackson)
        • [2.4 **Lombok**](#2.4 Lombok)
      • [3. **Spring相关类库**](#3. Spring相关类库)
      • [4. **并发类库**](#4. 并发类库)
        • [4.1 **`java.util.concurrent`**](#4.1 java.util.concurrent)
      • [5. **网络类库**](#5. 网络类库)
        • [5.1 **`java.net`**](#5.1 java.net)
        • [5.2 **OkHttp**](#5.2 OkHttp)

Java中有许多常用的类库,它们大大提高了开发效率。以下是一些常见的Java类库及其典型用法:

1. Java基础类库

这些类库是JDK自带的,广泛应用于各种Java项目中。

1.1 java.lang
  • Object:所有类的父类,提供基础的方法如equals()hashCode()toString()等。

  • String:用于字符串操作。典型用法:

    java 复制代码
    String str = "Hello, World!";
    String upperStr = str.toUpperCase(); // HELLO, WORLD!
    String subStr = str.substring(0, 5); // Hello
  • Math:提供基本数学运算,如取整、三角函数等。

    java 复制代码
    int max = Math.max(10, 20); // 20
    double sqrt = Math.sqrt(16); // 4.0
  • Thread:用于多线程编程。

    java 复制代码
    Thread thread = new Thread(() -> {
        System.out.println("Thread running");
    });
    thread.start();
1.2 java.util
  • ArrayList:动态数组。

    java 复制代码
    List<String> list = new ArrayList<>();
    list.add("Apple");
    list.add("Banana");
  • HashMap:键值对的集合。

    java 复制代码
    Map<String, Integer> map = new HashMap<>();
    map.put("John", 25);
    int age = map.get("John"); // 25
  • Collections:集合工具类,提供排序、查找等功能。

    java 复制代码
    List<Integer> numbers = Arrays.asList(3, 1, 2);
    Collections.sort(numbers); // [1, 2, 3]
1.3 java.io
  • File:用于文件操作。

    java 复制代码
    File file = new File("test.txt");
    boolean exists = file.exists();
  • BufferedReader:用于读取文本文件。

    java 复制代码
    BufferedReader reader = new BufferedReader(new FileReader("test.txt"));
    String line = reader.readLine();
    reader.close();
1.4 java.nio
  • Files:用于高效的文件操作。

    java 复制代码
    Path path = Paths.get("test.txt");
    List<String> lines = Files.readAllLines(path);
1.5 java.time
  • LocalDateLocalTimeLocalDateTime:用于处理日期和时间。

    java 复制代码
    LocalDate today = LocalDate.now();
    LocalDate birthDate = LocalDate.of(1990, Month.JANUARY, 1);

2. 第三方类库

以下是常见的第三方库,这些库不包含在JDK中,但可以通过Maven或Gradle引入。

2.1 Apache Commons
  • Commons Lang:提供各种实用工具类。

    java 复制代码
    String reversed = StringUtils.reverse("abc"); // "cba"
  • Commons IO:简化I/O操作。

    java 复制代码
    String content = FileUtils.readFileToString(new File("test.txt"), "UTF-8");
2.2 Google Guava
  • Lists:快速创建集合。

    java 复制代码
    List<String> list = Lists.newArrayList("a", "b", "c");
  • Joiner:将集合转换为字符串。

    java 复制代码
    String result = Joiner.on(", ").join(list); // "a, b, c"
2.3 Jackson

用于JSON的序列化和反序列化。

java 复制代码
ObjectMapper mapper = new ObjectMapper();
String jsonString = mapper.writeValueAsString(object); // 序列化
MyClass obj = mapper.readValue(jsonString, MyClass.class); // 反序列化
2.4 Lombok

简化Java代码,自动生成getter、setter、构造函数等。

java 复制代码
@Data
public class User {
  private String name;
  private int age;
}

3. Spring相关类库

  • Spring Context:管理Bean的生命周期和依赖注入。

    java 复制代码
    ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
    MyService myService = context.getBean(MyService.class);
  • Spring Boot:用于快速创建Spring应用。

    java 复制代码
    @SpringBootApplication
    public class Application {
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }

4. 并发类库

4.1 java.util.concurrent
  • ExecutorService:用于管理线程池。

    java 复制代码
    ExecutorService executor = Executors.newFixedThreadPool(10);
    executor.submit(() -> System.out.println("Task executed"));
    executor.shutdown();
  • CountDownLatch:同步工具类。

    java 复制代码
    CountDownLatch latch = new CountDownLatch(3);
    latch.await(); // 等待计数为0

5. 网络类库

5.1 java.net
  • HttpURLConnection:用于HTTP请求。

    java 复制代码
    URL url = new URL("http://example.com");
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setRequestMethod("GET");
    int responseCode = conn.getResponseCode();
5.2 OkHttp

流行的HTTP客户端库。

java 复制代码
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder().url("http://example.com").build();
Response response = client.newCall(request).execute();

这些类库涵盖了Java开发中的各个方面,熟练掌握它们能够大大提高开发效率。

相关推荐
Theodore_10222 小时前
4 设计模式原则之接口隔离原则
java·开发语言·设计模式·java-ee·接口隔离原则·javaee
冰帝海岸3 小时前
01-spring security认证笔记
java·笔记·spring
世间万物皆对象4 小时前
Spring Boot核心概念:日志管理
java·spring boot·单元测试
没书读了4 小时前
ssm框架-spring-spring声明式事务
java·数据库·spring
小二·4 小时前
java基础面试题笔记(基础篇)
java·笔记·python
开心工作室_kaic5 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
懒洋洋大魔王5 小时前
RocketMQ的使⽤
java·rocketmq·java-rocketmq
武子康5 小时前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
转世成为计算机大神6 小时前
易考八股文之Java中的设计模式?
java·开发语言·设计模式
qq_327342736 小时前
Java实现离线身份证号码OCR识别
java·开发语言