首页 > 编程语言 >第6章 Java常用类

第6章 Java常用类

时间:2024-12-11 20:54:08浏览次数:3  
标签:常用 Java String StringBuilder 日期 时间 字符串 now

6.1 包装类(Wrapper Classes)

  • 定义:包装类是基本数据类型的对象表示形式,它们允许我们把基本类型当作对象来使用。

  • 用途:提供静态方法进行基本类型和字符串之间的转换。
  • 自动装箱与拆箱:

  • (1)自动装箱:将基本类型自动转换为对应的包装类对象。
  • (2)拆箱:将包装类对象自动转换回基本类型。
  • Integer num = 42; // 自动装箱
    int value = num; // 自动拆箱
    

    6.2 String 类概述

    不可变性:String对象一旦创建就不能被修改,任何改变都会生成新的String对象。

  • 字符串拼接:使用+运算符或StringBuilder类进行高效拼接。

  • String greeting = "Hello";
    String name = "Alice";
    String message = greeting + ", " + name + "!"; // 字符串拼接
    

    6.3 StringBuffer 类与 StringBuilder 类

  • 共同点:都是可以修改内容的字符串类,与String不同,它们的内容可以更改而不必创建新对象。
  • 区别:StringBuffer是线程安全的,所有方法都是同步的;而StringBuilder不是线程安全的,因此性能更好。
  • 常用方法:
  • (1)append(String str):追加字符串。
  • (2)insert(int offset, String str):在指定位置插入字符串。
  • (3)delete(int start, int end):删除指定范围内的字符。
  • (4)reverse():反转字符串内容。
  • 如果不需要多线程支持,推荐使用StringBuilder以获得更好的性能。
  • StringBuilder builder = new StringBuilder("Hello");
    builder.append(", World!");
    System.out.println(builder.toString()); // 输出: Hello, World!
    

    6.4 时间和日期相关类

    • DateCalendar 类(遗留API):

      • 这些类已经被新的java.time包中的类取代,但在旧代码中仍然常见。
    • java.time 包(现代API):

      • Java 8引入了全新的时间日期API,位于java.time包下,提供了更直观和易用的类。
    • 常用类:

      • LocalDate:表示不带时区的日期。
      • LocalTime:表示不带日期的时间。
      • LocalDateTime:结合了日期和时间,但不包含时区信息。
      • ZonedDateTime:包含时区信息的完整日期时间表示。
      • Duration:用于计算两个时间点之间的时间差。
      • Period:用于计算两个日期之间的天数、月数或年数。
    • 格式化与解析:

      • 使用DateTimeFormatter类来格式化和解析日期时间字符串。

      

    • 常用类:

      • LocalDate:表示不带时区的日期。
      • LocalTime:表示不带日期的时间。
      • LocalDateTime:结合了日期和时间,但不包含时区信息。
      • ZonedDateTime:包含时区信息的完整日期时间表示。
      • Duration:用于计算两个时间点之间的时间差。
      • Period:用于计算两个日期之间的天数、月数或年数。
    • 格式化与解析:

      • 使用DateTimeFormatter类来格式化和解析日期时间字符串。
    • 示例:

      Java 深色版本
      LocalDate today = LocalDate.now();
      LocalDateTime now = LocalDateTime.now();
      ZonedDateTime zonedNow = ZonedDateTime.now(ZoneId.of("Asia/Shanghai"));
      Duration duration = Duration.between(LocalTime.of(8, 30), LocalTime.of(9, 45));

    6.5 其他常用类

    • Math 类:

      • 提供了数学运算相关的静态方法,如abs()max()min()sqrt()等。
    • Random 类:

      • 用于生成伪随机数,提供nextInt()nextDouble()等方法。
    • Scanner 类:

      • 从控制台或其他输入源读取用户输入,常用于简单的命令行程序。
    • ArrayList 类:

      • 动态数组实现,允许在运行时调整大小,替代传统的固定大小数组。
    • HashMap 类:

      • 实现键值对映射的数据结构,提供了快速查找、插入和删除操作。
    • File 类:

      • 表示文件或目录路径名的抽象表示,提供了文件操作的相关方法。
    • System 类:

      • 提供了一些系统级的操作,如获取当前时间戳(currentTimeMillis())、标准输入输出流等。
    • Thread 类和Runnable接口:

      • 用于创建和管理线程,实现多线程编程。

标签:常用,Java,String,StringBuilder,日期,时间,字符串,now
From: https://www.cnblogs.com/luoye1/p/18600705

相关文章

  • 深入解析Java中的Set接口
    文章目录1.Set概念简介2.Set接口定义及关系3.Set接口常用的API核心方法代码示例4.Set的常见实现类特性HashSetLinkedHashSetTreeSetEnumSetConcurrentSkipListSet5.Set的实际案例扩展去重集合运算成员资格测试1.Set概念简介Set接口概述:Set是Java集合......
  • Linux中vim常用命令详解
    文章目录Linux中vim常用命令详解一、引言二、Vim的工作模式1、命令模式1.1、常用命令2、输入模式3、底线命令模式三、文本编辑1、移动命令2、编辑操作3、撤销与重做四、使用示例1、查找与替换2、多文件编辑五、总结Linux中vim常用命令详解一、引言Vim是Linux......
  • 【Java开发】maven概述:构建、依赖管理和项目生命周期
    1.项目开发中的问题1、我的项目依赖一些jar包,我把他们放在哪里?直接拷贝到项目的lib文件夹中?如果我开发的第二个项目还是需要上面的那些jar包,再把它们复制到我当前项目lib中?那如果现在是第三次了,再复制一次吗?以上操作会出现的问题:重复存放jar包;容易出现jar包冲突;手动拷贝jar......
  • 说说 Java 的执行流程?
    Java的执行流程Java的执行流程包括多个阶段,从源码编写到最终程序的执行,涉及到编译、类加载、字节码执行、垃圾回收等多个环节。下面将详细介绍Java程序的执行流程。1.编写源代码开发者首先在IDE或文本编辑器中编写Java源代码文件(以.java为扩展名)。源代码文件通常包......
  • 基于java的SpringBoot/SSM+Vue+uniapp的校园博客系统的详细设计和实现(源码+lw+部署文
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 基于java的SpringBoot/SSM+Vue+uniapp的旅游管理系统的详细设计和实现(源码+lw+部署文
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 常用的 JVM 配置参数有哪些?
    常用的JVM配置参数JVM配置参数可以用来控制Java程序的内存分配、垃圾回收、性能优化等。以下是一些常用的JVM配置参数:1.堆内存相关参数-Xms:设置JVM初始堆内存大小。例如:-Xms512m设置初始堆内存为512MB。-Xmx:设置JVM最大堆内存大小。例如:-Xmx2g设置最大堆内存......
  • 你常用哪些工具来分析 JVM 性能?
    常用的JVM性能分析工具JVM性能分析工具主要用于监控、调试和优化Java程序的性能,尤其是在垃圾回收、内存泄漏、线程调度等方面。以下是一些常用的JVM性能分析工具:1.jvisualvmjvisualvm是一个基于GUI的Java性能分析工具,它可以帮助开发者进行实时监控、内存分析和垃......
  • 如何在 Java 中进行内存泄漏分析?
    如何在Java中进行内存泄漏分析?内存泄漏是指程序中无法访问的对象仍然被占用内存,导致内存无法回收,最终导致内存不足、程序崩溃等问题。Java中的内存泄漏通常与垃圾回收机制的工作方式相关,虽然JVM会自动管理内存,但是如果程序设计不当,仍然可能发生内存泄漏。以下是一些常用的......
  • Java 里的对象在虚拟机里面是怎么存储的?
    Java中的对象在虚拟机里的存储在Java中,对象在虚拟机中的存储方式取决于JVM内存模型,主要存储在堆(Heap)中。对象的内存布局和管理方式会影响对象的创建、访问和销毁。下面详细解释对象在JVM中的存储结构。1.对象在堆中的存储Java中的对象通常存储在堆内存中。堆内存......