java常用类

Java常用类概览

Java是一种面向对象的编程语言,它提供了丰富的类库,这些类库中的类被广泛用于各种编程任务。在这篇文章中,我们将简要介绍一些Java中常用且重要的类。

1. String

String 类在Java中用于表示字符串。它是一个特殊的对象,因为字符串在Java中是不可变的。这意味着一旦创建,字符串的内容就不能被改变。String 类提供了丰富的方法来操作字符串,如连接、分割、转换大小写等。

String str = "Hello, World!";
String upperCaseStr = str.toUpperCase(); // "HELLO, WORLD!"

特点

  • 不可变性:每次字符串操作都会产生一个新的字符串对象。
  • 字符串池:字符串常量和一些短的字符串会被缓存在字符串池中,以节省内存。

常用方法

  • length(): 返回字符串的长度。
  • charAt(int index): 返回指定索引处的字符。
  • substring(int beginIndex): 返回从指定索引开始的子字符串。
  • equals(Object another): 检查两个字符串是否相等。
  • contains(CharSequence s): 判断字符串是否包含指定的字符序列。

2. StringBuilder

StringBuilder 类是String的一个可变版本。它在内部使用可变的字符数组来存储字符串,因此可以高效地进行字符串的修改操作。

StringBuilder sb = new StringBuilder("Hello");
sb.append(", World!"); // "Hello, World!"

特点

  • 可变性:可以修改字符串内容,而不需要创建新对象。
  • 线程安全性StringBuilder不是线程安全的。如果需要线程安全,可以使用StringBuffer

常用方法

  • append(Object obj): 将指定对象的字符串表示形式追加到此字符序列。
  • insert(int index, Object obj): 在指定位置插入指定对象的字符串表示形式。
  • delete(int start, int end): 删除序列中从start(包括)到end(不包括)的字符。
  • reverse(): 将此字符序列用自身调换。

3. ArrayList

ArrayList 是一个基于动态数组实现的列表,它允许存储任意类型的对象。ArrayList 可以自动增长,但当元素数量超过当前容量时,需要进行扩容操作,这可能会导致性能下降。

ArrayList<String> list = new ArrayList<>();
list.add("Java");
list.add(1, "Python"); // 在索引1的位置插入"Python"

特点

  • 动态数组:底层使用数组实现,支持快速随机访问。
  • 自动扩容:当添加的元素超过当前容量时,会自动创建一个新的数组并复制原有元素。

常用方法

  • add(E e): 在列表末尾添加一个元素。
  • get(int index): 返回指定位置的元素。
  • set(int index, E element): 替换指定位置的元素。
  • remove(int index): 删除指定位置的元素。

4. HashMap

HashMap 是一个基于哈希表的键值对集合,它允许使用键快速查找、插入和删除元素。HashMap 不保证映射的顺序。

HashMap<String, Integer> map = new HashMap<>();
map.put("Java", 1);
map.put("Python", 2);

特点

  • 键值对:存储键值对,通过键快速访问值。
  • 哈希表:使用哈希函数将键映射到表中的位置。
  • 非线程安全HashMap不是线程安全的。线程安全的版本是ConcurrentHashMap

常用方法

  • put(K key, V value): 将指定的值与此映射中的指定键关联。
  • get(Object key): 返回指定键所映射的值。
  • remove(Object key): 从映射中移除指定键的键值对。
  • keySet(): 返回映射中包含的键的Set视图。

5. Math

Math 类是一个工具类,提供了一系列用于执行基本数学运算的方法,如三角函数、指数、对数、幂、绝对值等。

double root = Math.sqrt(16); // 结果为4.0
double power = Math.pow(2, 3); // 2的3次方,结果为8.0

常用方法

  • abs(double a): 返回double参数的绝对值。
  • sqrt(double a): 返回double参数的正平方根。
  • pow(double a, double b): 返回a的b次幂。
  • round(double a): 将double参数四舍五入为最接近的int值。

6. Date 和 Calendar

Date 类表示特定的瞬间,精确到毫秒。Calendar 类是一个抽象类,它为日历字段到毫秒的时间值提供了映射。

Date date = new Date();
System.out.println("Today's date: " + date);

Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, 2024);
calendar.set(Calendar.MONTH, Calendar.APRIL);
calendar.set(Calendar.DAY_OF_MONTH, 22);
System.out.println("Calendar set to: " + calendar.getTime());

特点

  • 时间表示Date用于表示时间点,Calendar用于更细致地操作时间。
  • 国际化Calendar支持国际化,可以处理不同地区的日历系统。

常用方法

  • getTime(): 获取Date对象表示的时间。
  • set(int field, int value): 在Calendar中设置给定日历字段的值。
  • get(int field): 获取给定日历字段的值。

7. System

System 类包含一些与系统相关的方法,如获取系统属性、标准输入输出等。

System.out.println("Java version: " + System.getProperty("java.version"));

特点

  • 系统属性:可以访问关于Java虚拟机和操作系统的信息。
  • 标准输入输出:通过System.inSystem.outSystem.err进行操作。

常用方法

  • getProperty(String key): 获取与指定键关联的系统属性的字符串值。
  • setOut(PrintStream out): 设置新的标准输出流。

8. Random

Random 类用于生成随机数。它可以生成各种类型的随机数,包括整数、长整型、浮点数等。

Random random = new Random();
int number = random.nextInt(100); // 生成一个0到99之间的随机整数

特点

  • 伪随机数:生成的随机数是伪随机的,由一个初始种子值决定。
  • 可重复性:使用相同的种子值可以生成相同的随机数序列。

常用方法

  • nextInt(int bound): 返回一个随机的int值,它在0(包括)和指定的bound(不包括)之间。
  • nextDouble(): 返回一个随机的double值,它在0.0(包括)和1.0(不包括)之间。

9. Scanner

Scanner 类用于获取用户的输入。它可以解析基本数据类型及其字符串表示形式,并从各种输入源读取数据。

Scanner scanner = new Scanner(System.in);
System.out.print("Enter your name: ");
String name = scanner.nextLine();
System.out.println("Hello, " + name);

特点

  • 多种数据类型:可以读取整数、浮点数、字符串等。
  • 使用正则表达式:可以使用正则表达式来决定输入的格式。

常用方法

  • nextInt(): 读取一个整数。
  • nextDouble(): 读取一个双精度浮点数。
  • nextLine(): 读取一行输入。

10. Exception

Java的异常处理机制允许程序在出现错误时继续运行而不是崩溃。Exception 类是所有异常的超类。

try {
    int division = 10 / 0;
} catch (ArithmeticException e) {
    System.out.println("Cannot divide by zero.");
}

特点

  • 异常分类:分为受检异常(编译时必须处理)和非受检异常(运行时异常,可以处理也可以不处理)。
  • 异常链:可以保留原始异常信息,便于调试。

常用方法

  • getMessage(): 获取异常的详细消息。
  • printStackTrace(): 打印异常的调用栈跟踪。

总结

Java的类库非常庞大,这里只列出了一小部分常用类。掌握这些类对于编写高效、健壮的Java程序至关重要。随着对Java的深入学习,我们将遇到更多有用的类和接口。这篇文章提供了对Java中一些基础且广泛使用的类的简要介绍。在实际编程中,了解这些类的功能和用法对于解决各种编程问题非常有帮助。

  • 24
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值