JavaSE——三代日期类(Date、Calendar、LocalDate、LocalTime、LocalDateTime、Instant)

news2024/9/28 5:27:10

目录

一、util包.Date类——第一代日期类

二、SimpleDateFormat——日期时间格式化

1.日期时间转换成字符串

2.字符串转换成日期时间

三、Calendar日历类——第二代日期类

1.Calendar类中常用的静态方法

2.设置指定的字段(不常用)

3.calendar.setTime()使用案例——获取字符串时间是一年中的第几天

四、前两代日期类的不足分析

五、LocalDate(日期)、LocalTime(时间)、LocalDateTime(日期时间)——第三代日期类(JDK8加入)

(一)LocalDate类——只有日期(年月日),没有时间(时分秒)

1.常用方法

2.LocalDate和String的相互转换

2.1日期时间格式转换器——DateTimeFormatter

2.2将日期转换成字符串

2.3将字符串转换成日期

(二)LocalTime类——只有时间(时分秒纳秒),没有日期(年月日)

1.常用方法

2.LocalTime和String的相互转换

2.1将时间转换成字符串

2.2将字符串转换成时间

(三)LocalDateTime类——有日期时间毫秒

1.常用方法

2.LocalDateTime和String的相互转换

2.1将日期时间转换为字符串

2.2将字符串转换为日期时间

(四)Instant类——时间戳,精确到纳秒

1.修改时区

2.Instant与Date相互转化

3.Instant的until方法——获取两个时间的差值

4.将Instant转换成LocalDateTime类型

(五)间隔相关的日期类——Period和Duration

1.Period——计算日期间隔

2.Duration——计算时间间隔 

3.第三代日期类更多方法


一、util包.Date类——第一代日期类

Date:精确到毫秒,代表特定的瞬间

对于日期时间的操作:

Date date = new Date();
System.out.println(date); // Fri Sep 20 22:14:05 CST 2024

Date date1 = new Date(1000L);
System.out.println(date1); // Thu Jan 01 08:00:01 CST 1970

// 计算机元年在中国是 1970年1月1日早上8点
// 设置计算机元年之后的时间
date.setTime(1000L);
System.out.println(date); // Thu Jan 01 08:00:01 CST 1970
Date date = new Date();
System.out.println(date); // Fri Sep 20 22:17:43 CST 2024

// 获取计算机元年(1970年1月1日早上8点)到现在的毫秒值
System.out.println(date.getTime()); // 1726841863209

// 毫秒值转换为日期时间
Date date2 = new Date(1726841863209L);
System.out.println(date2); // Fri Sep 20 22:17:43 CST 2024

二、SimpleDateFormat——日期时间格式化

1.日期时间转换成字符串

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

SimpleDateFormat simpleDateFormat = new SimpleDateFormat();
String format = simpleDateFormat.format(new Date());
System.out.println(format); // 2024/9/20 下午10:18

SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String format1 = simpleDateFormat1.format(new Date());
System.out.println(format1); // 2024年09月20日 22:18:30

SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss.SSS E a");
String format2 = simpleDateFormat2.format(new Date());
System.out.println(format2); // 2024年09月20日 22:18:30.744 周五 下午


// 创建一个SimpleDateFormat对象,用于指定输出格式为星期几
SimpleDateFormat sdf = new SimpleDateFormat("EEEE", Locale.getDefault());
String weekDay = sdf.format(new Date());
// 输出星期几
System.out.println("今天是:" + weekDay); // 今天是:星期五

2.字符串转换成日期时间

注意要抛异常

public static void main(String[] args) throws ParseException {

String str = "2035年10月1日 12:12:12 星期一";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月d日 HH:mm:ss E");
Date date = simpleDateFormat.parse(str);
System.out.println(date); 
// Mon Oct 01 12:12:12 CST 2035

// 1. SimpleDateFormat可以把一个格式化的String 转成对应的 Date
// 2. 得到Date仍然在输出时,还是按照国外的形式,如果希望指定格式输出,需要转换
// 3. 在把String -> Date , 使用的 sdf 格式需要和你给的String的格式一样,否则会抛出转换异常

System.out.println(simpleDateFormat.format(date));
// 2035年10月1日 12:12:12 星期一
}

三、Calendar日历类——第二代日期类

1.Calendar类中常用的静态方法

        Calendar.getInstance()方法是Java中Calendar类的一个静态方法,用于获取一个表示当前时间的Calendar对象。

        Calendar是一个抽象类,并且构造器是private;可以通过getInstance()来获取实例;提供了大量的方法和字段:

// 日历类  获取默认时区的日历
Calendar c = Calendar.getInstance();
System.out.println(c);
// java.util.GregorianCalendar[time=1727331839843,areFieldsSet=true,
// areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo
// [id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,
// transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,
// ERA=1,YEAR=2024,MONTH=8,WEEK_OF_YEAR=39,WEEK_OF_MONTH=4,DAY_OF_MONTH=26,
// DAY_OF_YEAR=270,DAY_OF_WEEK=5,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=2,
// HOUR_OF_DAY=14,MINUTE=23,SECOND=59,MILLISECOND=843,ZONE_OFFSET=28800000,
// DST_OFFSET=0]

System.out.println("年:" + c.get(Calendar.YEAR)); // 2024

//这里为什么要+1,因为Calendar返回月时候,是按照0开始编号
System.out.println("月:" + (c.get(Calendar.MONTH) + 1)); // 9

System.out.println("星期:" + c.get(Calendar.WEDNESDAY)); // 4

System.out.println("当月的第几周:" + c.get(Calendar.WEEK_OF_MONTH)); // 4

System.out.println("日:" + c.get(Calendar.DAY_OF_MONTH)); // 26

System.out.println("12小时制:" + c.get(Calendar.HOUR)); // 2

System.out.println("24小时制:" + c.get(Calendar.HOUR_OF_DAY)); // 2

System.out.println("分钟:" + c.get(Calendar.MINUTE)); // 16

System.out.println("秒:" + c.get(Calendar.SECOND)); // 38

System.out.println("毫秒:" + c.get(Calendar.MILLISECOND)); // 361

System.out.println("当年的第几天:" + c.get(Calendar.DAY_OF_YEAR)); // 270

//4.Calendar没有提供对应的格式化的类,因此需要自己组合来显示
System.out.println(c.get(Calendar.YEAR) + "年" + (c.get(Calendar.MONTH) + 1) + "月"
        + c.get(Calendar.DAY_OF_MONTH) + "日 " + c.get(Calendar.HOUR_OF_DAY) + ":"
        + c.get(Calendar.MINUTE) + ":" + c.get(Calendar.SECOND)); // 2024年9月26日 14:20:24

2.设置指定的字段(不常用)

calendar.set(Calendar.YEAR,2050);
calendar.set(2050,9,1,12,0,0);

3.calendar.setTime()使用案例——获取字符串时间是一年中的第几天

String str = "2050-10-1 12:12:12";

// 1.把字符串转换成日期
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = simpleDateFormat.parse(str); // 注意要抛异常

// 2.Calendar类中传入格式化后的日期时间
Calendar calendar1 = Calendar.getInstance(); // 获取当前时间的Calendar对象
calendar1.setTime(date);
System.out.println(calendar1); // 打印日历
// java.util.GregorianCalendar[time=2548210332000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=31,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2050,MONTH=9,WEEK_OF_YEAR=40,WEEK_OF_MONTH=1,DAY_OF_MONTH=1,DAY_OF_YEAR=274,DAY_OF_WEEK=7,DAY_OF_WEEK_IN_MONTH=1,AM_PM=1,HOUR=0,HOUR_OF_DAY=12,MINUTE=12,SECOND=12,MILLISECOND=0,ZONE_OFFSET=28800000,DST_OFFSET=0]


// 3.判断该时间是当年的第几天
int dayOfYear1 = calendar1.get(Calendar.DAY_OF_YEAR);
System.out.println(dayOfYear1); // 274

四、前两代日期类的不足分析

JDK1.0中包含了一个java.util.Date类,但是它的大多数方法已经在JDK1.1引入Calendar类之后被弃用了。而Calendar存在的问题:

  1. 可变性:像日期和时间这样的类应该是不可变的;
  2. 偏移性:Date中的年份是从1900开始的,而月份都从0开始
  3. 格式化:格式化只针对Date有用,Calendar则不行
  4. 此外,它们也不是线程安全的;不能处理闰秒等(每隔2天,多出1s)

五、LocalDate(日期)、LocalTime(时间)、LocalDateTime(日期时间)——第三代日期类(JDK8加入)

开发中推荐使用第三代日期类

(一)LocalDate类——只有日期(年月日),没有时间(时分秒)

1.常用方法

    // 获取当前时间
    LocalDate date = LocalDate.now();
    System.out.println(date); // 2024-09-21

    // 手动指定日期
//    LocalDate date1 = LocalDate.of(2050, 9, 21);
//    System.out.println(date1); // 2050-09-21

    // 添加天数
//    date = date.plusDays(3);
//    System.out.println(date); // 2024-09-24

    // 添加周的天数,一次性7天
//    date = date.plusWeeks(1);
//    System.out.println(date); // 2024-09-28

    // 添加月
//    date = date.plusMonths(2);
//    System.out.println(date); // 2024-11-21

    // 添加年
//    date = date.plusYears(2);
//    System.out.println(date); // 2026-09-21

    // 自定义添加天数
    LocalDate localDate = date.plus(3, ChronoUnit.DAYS);
    System.out.println(localDate); // 2024-09-24

++++++++++++++++++++减少也是同理+++++++++++++++++++++++

      // 减少日期
      // 减少天
//     date.minusDays();
        
        // 减少月
//     date.minusMonths();
        
        // 减少周
//     date.minusWeeks();
        
        // 减少年
//     date.minusYears();

2.LocalDate和String的相互转换

2.1日期时间格式转换器——DateTimeFormatter
LocalDate date = LocalDate.now();
System.out.println(date); // 2024-09-21

DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日");
2.2将日期转换成字符串
String format = dateTimeFormatter.format(date);
System.out.println(format); // 2024年09月21日
2.3将字符串转换成日期
String str = "2024年09月21日";
DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy年MM月dd日");
LocalDate localDate = LocalDate.parse(str, dateTimeFormatter1);
System.out.println(localDate); // 2024-09-21

(二)LocalTime类——只有时间(时分秒纳秒),没有日期(年月日)

1.常用方法

    // 获取当前时间,精确到纳秒
//    LocalTime localTime = LocalTime.now();
//    System.out.println(localTime); // 19:32:41.840327800
	
    // 指定时间
//    LocalTime time = LocalTime.of(18, 0, 10);
//    System.out.println(time); // 18:00:10
	
    // 添加时间
    // 添加小时
//    time.plusHours(3);
	
    // 添加分钟
//    time.plusMinutes(10);
	
    // 添加秒
//    time.plusSeconds(50);
	
    // 添加纳秒
//    time.plusNanos();
	
    // 使用枚举添加时间
    LocalTime localTime1 = LocalTime.now();
    System.out.println(localTime1); // 19:32:41.840327800
	
    localTime1 = localTime1.plus(3, ChronoUnit.HOURS);
    System.out.println(localTime1); // 22:31:33.953687700
	
    // 减时间
    // 减少小时
    LocalTime time = localTime1.minus(4, ChronoUnit.HOURS);
    System.out.println(time); // 18:35:43.754074800
//    localTime1.minusHours();
	
    // 减少分钟
//    localTime1.minusMinutes();
	
    // 减少秒
//    localTime1.minusSeconds();
	
    // 减少纳秒
//    localTime1.minusNanos();

2.LocalTime和String的相互转换

2.1将时间转换成字符串

时间转换器和上面的一样,也是DateTimeFormatter。

// LocalTime类的时间与String相互转换
LocalTime localTime = LocalTime.now();
System.out.println(localTime); // 19:54:30.234495100

// 日期时间格式转换器
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH-mm-ss-SSS");

// 时间转换成String
String str = dateTimeFormatter.format(localTime);
System.out.println(str); // 19-54-30-234
2.2将字符串转换成时间
String time = "19-48-49-616";
DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("HH-mm-ss-SSS");

LocalTime strTime = LocalTime.parse(time, dateTimeFormatter1);
System.out.println(strTime); // 19:48:49.616

(三)LocalDateTime类——有日期时间毫秒

1.常用方法

// 获取当前日期时间
LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(localDateTime); // 2024-09-26T14:53:33.392

System.out.println("年=" + localDateTime.getYear()); // 2024
System.out.println("月=" + localDateTime.getMonth()); // SEPTEMBER
System.out.println("月=" + localDateTime.getMonthValue()); // 9
System.out.println("日=" + localDateTime.getDayOfMonth()); // 26
System.out.println("时=" + localDateTime.getHour()); // 14
System.out.println("分=" + localDateTime.getMinute()); // 53
System.out.println("秒=" + localDateTime.getSecond()); // 33

// 指定日期时间
LocalDateTime dateTime = LocalDateTime.of(2050, 3, 10, 12, 10, 15);
System.out.println(dateTime); // 2050-03-10T12:10:15

// 添加日期时间
localDateTime = localDateTime.plus(3, ChronoUnit.CENTURIES);
System.out.println(localDateTime); // 2324-09-21T20:04:23.286008100

// 减少日期时间
localDateTime = localDateTime.minus(1, ChronoUnit.CENTURIES);
System.out.println(localDateTime); // 2224-09-21T20:04:23.286008100
LocalDateTime ldt = LocalDateTime.now();
System.out.println(ldt); // 2024-09-26T15:16:28.053

// 日期格式化:
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

// 添加指定的天数:
LocalDateTime localDateTime = ldt.plusDays(890);
// 格式化输出:
String format = dateTimeFormatter.format(localDateTime);
System.out.println("890天后 日期=" + format); // 890天后 日期=2027-03-05 15:15:29

// 减少指定的时间:
LocalDateTime localDateTime1 = ldt.minusMinutes(3456);
// 格式化输出:
String format1 = dateTimeFormatter.format(localDateTime1);
System.out.println("2456分钟前 日期=" + format1); // 2456分钟前 日期=2024-09-24 05:39:29

2.LocalDateTime和String的相互转换

2.1将日期时间转换为字符串

时间转换器和上面的一样,也是DateTimeFormatter。

LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(localDateTime); // 2024-09-21T20:06:38.060533700

DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss:SSS");
String str = dateTimeFormatter.format(localDateTime);
System.out.println(str); // 2024年09月21日 20:06:38:060
2.2将字符串转换为日期时间
String str = "2024年09月21日 20:06:38:060";
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss:SSS");
LocalDateTime localDateTime = LocalDateTime.parse(str, dateTimeFormatter);
System.out.println(localDateTime); // 2024-09-21T20:06:38.060

(四)Instant类——时间戳,精确到纳秒

1.修改时区

// 获取当前的世界时间
Instant now = Instant.now();
System.out.println(now); // 2024-09-21T12:29:55.112482500Z

// 获取当前的北京时间
Instant now1 = Instant.now(Clock.offset(Clock.systemUTC(), Duration.ofHours(8)));
System.out.println(now1); // 2024-09-21T20:29:55.120461200Z

// 将当前的北京时间添加8小时
now1 = now1.plus(8, ChronoUnit.HOURS);
System.out.println(now1); // 2024-09-22T04:29:55.120461200Z

2.Instant与Date相互转化

public static void main(String[] args) throws ParseException {
    // 静态方法now() 获取表示当前时间戳的对象
    Instant now = Instant.now();
    System.out.println(now);

    // 时间戳转为Date格式
    Date date = Date.from(now);
    System.out.println(date);

    // Date转为Instant时间戳
    Instant instant = date.toInstant();
    System.out.println(instant);
}

3.Instant的until方法——获取两个时间的差值

Instant.now(Clock.offset(Clock.systemUTC(), Duration.ofHours(8)));

// until方法:比较两个时间之间的差值
Instant now = Instant.now();
System.out.println(now); // 2024-09-21T12:47:53.622092Z

Instant nowPlus = now.plus(8, ChronoUnit.HOURS);
System.out.println(nowPlus); // 2024-09-21T20:47:53.622092Z

long duration = now.until(nowPlus, ChronoUnit.HOURS);
System.out.println(duration); // 8

// 获取毫秒
System.out.println(now.get(ChronoField.MILLI_OF_SECOND)); // 622
// 获取微秒
System.out.println(now.get(ChronoField.MICRO_OF_SECOND)); // 622092
// 获取纳秒
System.out.println(now.get(ChronoField.NANO_OF_SECOND)); // 622092000

4.将Instant转换成LocalDateTime类型

// ZoneId.systemDefault() 默认时区
LocalDateTime localDateTime = LocalDateTime.ofInstant(now, ZoneId.systemDefault());
System.out.println(localDateTime); // 2024-09-21T20:47:53.622092

(五)间隔相关的日期类——Period和Duration

1.Period——计算日期间隔

// 计算日期间隔
public static void demo3() {
    LocalDate d1 = LocalDate.now();
    LocalDate d2 = LocalDate.of(2050, 10, 23);
    Period between = Period.between(d1, d2);
    System.out.println("相差的年数:" + Math.abs(between.getYears())); // 26
    System.out.println("相差的月数:" + Math.abs(between.getMonths())); // 0
    System.out.println("相差的天数:" + Math.abs(between.getDays())); // 21

    System.out.println("----------------");
    long yearsBetween = ChronoUnit.YEARS.between(d1, d2);
    System.out.println("相差的年数:" + yearsBetween); // 26
    long monthsBetween = ChronoUnit.MONTHS.between(d1, d2);
    System.out.println("相差的月数:" + monthsBetween); // 312
    long daysBetween = ChronoUnit.DAYS.between(d1, d2);
    System.out.println("相差的天数:" + daysBetween); // 9517

    System.out.println("--------------------");
    // Period.between用法举例
    LocalDate birthDate = LocalDate.of(1990, 2, 10);
    LocalDate today = LocalDate.now();
    Period age = Period.between(birthDate, today);
    System.out.println("Age: " + age.getYears() + " years, " + age.getMonths()
            + " months, " + age.getDays() + " days");
    // 通常情况下,我们只需要年份,月份和天数可以忽略或进行适当处理
    System.out.println("Age in years: " + age.getYears());

    LocalDate fiscalYearStart = LocalDate.of(2023, 7, 1);
    LocalDate fiscalYearEnd = LocalDate.of(2024, 6, 30);
    Period fiscalYearDuration = Period.between(fiscalYearStart, fiscalYearEnd);
    System.out.println("Fiscal year duration: " + fiscalYearDuration.getYears() + " years, "
            + fiscalYearDuration.getMonths() + " months, "
            + fiscalYearDuration.getDays() + " days");
}

2.Duration——计算时间间隔 

public static void demo4() {
    LocalDateTime t1 = LocalDateTime.now();
    System.out.println(t1);
    LocalDateTime t2 = LocalDateTime.of(2024, 12, 8, 0, 0, 0);
    System.out.println(t2);
    Duration duration = Duration.between(t1, t2);
    System.out.println("相差的总天数" + duration.toDays());
    System.out.println("相差的总小时数" + duration.toHours());
    System.out.println("相差的总分钟数" + duration.toMinutes());
    // System.out.println("相差的总秒数" + duration.toSeconds()); jdk9+
}

3.第三代日期类更多方法

MonthDay类:检查重复事件

是否是闰年

增加日期的某个部分等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2168688.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

总结拓展十二:SAP采购定价条件

第一节 采购定价条件 1.条件类型介绍 2.条件类型概念 条件类型(Condition Technology)是SAP中运用较多的配置技术,了解条件技术如何运作,有助于我们理解系统在不同情况下的行为和反应,条件技术广泛地应用于定价、文…

【论文_2000】REINFORCE 和 actor-critic 等策略梯度方法的局部收敛性证明

部分证明不太理解 SUTTON R S, MCALLESTER D A, SINGH S P, et al. Policy gradient methods for reinforcement learning with function approximation [C] // Advances in neural information processing systems, 2000: 1057-1063. 【PDF 链接】 文章目录 摘要引言1 策略梯…

Arthas jad(字节码文件反编译成源代码 )

文章目录 二、命令列表2.2 class/classloader相关命令2.2.1 jad(字节码文件反编译成源代码 )举例1:反编译指定的函数 :jad com.hero.lte.ems.sysmanager.cache.SMTaskCache executeTask举例2:反编绎时只显示源代码&…

PCIe扫盲(14)

系列文章目录 PCIe扫盲(一) PCIe扫盲(二) PCIe扫盲(三) PCIe扫盲(四) PCIe扫盲(五) PCIe扫盲(六) PCIe扫盲(七&#xff09…

如何查看电脑的虚拟内存信息?

1、按下键盘的 win R 键 , 输入:cmd , 然后按下【回车】 2、在弹出的窗口输入:systeminfo , 然后按下【回车】,等待加载结果出来。 3、如下位置,显示的即是当前电脑的【虚拟内存】信息&…

Fusion Access

1.FA桌面云需要微软三剑客 2.AD,DNS,DHCP合并部署在一台虚机,内存配置8G 3.FA各个组件 3.1终端接入 3.2接入和访问控制层 3.3虚拟桌面管理层-桌面云规划及部署 3.4安装Linux基础架构虚拟机FA01 3.4.1安装Tools 3.4.2安装FusionAccess组件&am…

希捷电脑硬盘好恢复数据吗?探讨可能性、方法以及注意事项

在数字化时代,数据已成为我们生活和工作中不可或缺的一部分。希捷电脑硬盘作为数据存储的重要设备,承载着大量的个人文件、工作资料以及珍贵回忆。然而,面对硬盘故障或误操作导致的数据丢失,许多用户不禁要问:希捷电脑…

找到你的工具!5款免费可视化报表工具对比分析

选择合适的可视化工具对于分析和展示数据至关重要,以下是五款免费的可视化工具,它们各具特色,能够适应各种需求。本文将介绍每款工具的优势与不足,帮助你找到最合适的解决方案。 1. 山海鲸可视化 介绍:山海鲸可视化是…

UniApp组件与微信小程序组件对照学习

UniApp只是一个第三方的开发工具,借鉴各种平台的能力,UniApp的组件也借鉴了微信小程序的组件,我们学习时,可以进行对照学习,我们在用UniApp开发微信小程序时,UniApp也只是将代码转成了微信小程序的代码&…

“电瓶车火灾”频发,如何防范自救

1.概述 近年来,随着电动自行车使用的普及化,由此引发的起火事故频繁发生。作为上海市烧伤急救中心,上海交通大学医学院附属瑞金医院的灼伤整形科收治的此类病人数量也在逐年上升。电动自行车,已经成为一种新型火灾事故的“肇事者…

【Docker】02-数据卷

1. 数据卷 数据卷(volume) 是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。 2. 常见命令 docker volume createdocker volume lsdocker volume rmdocker volume inspect 查看某个数据卷的详情docker volume prune 清除数据卷 **数据卷挂载&#xff1a…

【笔记】数据结构|链表算法总结|快慢指针场景和解决方案|链表归并算法和插入算法|2012 42

受堆积现象直接影响的是:平均查找长度 产生堆积现象,即产生了冲突,它对存储效率、散列函数和装填因子均不会有影响,而平均查找长度会因为堆积现象而增大。 2012 42 参考灰灰考研 假定采用带头结点的单链表保存单词,当…

MySQL_表_进阶(1/2)

我们的进阶篇中,还是借四张表,来学习接下来最后关于表的需求,以此完成对表的基本学习。 照例给出四张表: 学院表:(testdb.dept) 课程表:(testdb.course) 选课表:(testdb.sc) 学生表…

JS面试真题 part7

JS面试真题 part7 31、web常见的攻击方式有哪些?如何防御32、说说JavaScript中内存泄漏的几种情况33、JavaScript如何实现继承34、说说JavaScript数字精度丢失的问题,如何解决35、举例说明你对尾递归的理解,有哪些应用场景 31、web常见的攻击…

使用kaggle命令下载数据集和模型

点击用户头像,点击Settings: 找到API,点击create new token,将自动下载kaggle.json: 在用户目录下创建.kaggle文件夹,并将下载的kaggle.json文件移动到该文件夹: cd ~ mv Downloads/kaggle.j…

Universal Link配置不再困扰,Xinstall来帮忙

在移动互联网时代,App的推广和运营至关重要。而Universal Link作为一种能够实现网页与App间无缝跳转的技术,对于提升用户体验、引流至App具有显著效果。今天,我们就来科普一下Universal Link的配置方法,并介绍如何通过Xinstall这款…

2024-2025华为ICT大赛报名|赛前辅导|学习资料

华为ICT大赛是华为公司打造的面向全球高校的年度ICT赛事,大赛以“联接、荣耀、未来”为主题,协同政府、高等教育机构、培训机构和行业企业,促进高校ICT人才培养、成长和就业,助力ICT人才生态繁荣。2021年3月,大赛成功入…

Linux Centos7达梦8数据库安装说明(附安装包,超详细图文!)收藏这一篇就够了!

VMWare17&Linux Centos7&达梦数据库8.4 使用说明 1.导语 1.1说明文档编写思路 小伙伴们,在自己电脑上搞起来啊,随便安装Linux环境,也不用担心搞错配置搞坏环境,大不了重装Linux系统。hahahhhhhhhhhh 由于本地没有合适的Linux环境进行…

AIGAME平台的由来与未来展望 —— 蒙特加密基金推动区块链与AI融合创新

摘要: AIGAME平台凭借蒙特加密产业基金的战略投资,成为区块链与AI融合创新的先驱。该平台集成了链游、DeFi、加密聊天和跨境支付等多项功能,打造出一个多元化的Web3生态系统。未来,AIGAME将在技术创新和全球布局中持续引领潮流。 …

JavaScript 学习

一、输出 为方便调试可以输出内容&#xff0c;但是用户是看不到的。要在开发者模式中看。 console . log ( "Hello" )&#xff1b; 二、外部文件引用 可以直接在html中写JS <head> <meta charset"utf-8"> <script> console.log("he…