溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Java日期操作方法工具類的示例分析

發(fā)布時(shí)間:2021-05-25 09:32:00 來(lái)源:億速云 閱讀:183 作者:小新 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)Java日期操作方法工具類的示例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

本文實(shí)例講述了Java日期操作方法工具類,具體如下:

package com.gcloud.common;
import org.apache.http.util.TextUtils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.regex.Pattern;
/**
 * 日期時(shí)間工具類
 * Created by charlin on 2017/9/3.
 */
public class DateUtil {
 public static final String CHINA_DATE_FORMAT = "yyyy年MM月dd日";
 public static final String DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
 public static final String DATE_FORMAT = "yyyy-MM-dd";
 public static final String TIME_FORMAT = "HH:mm:ss";
 //----------------判斷-----------------------------------------------
 /**
 * 是否是潤(rùn)年
 * @param yearNum
 * @return
 */
 public static boolean isLeapYear(int yearNum) {
 boolean isLeep = false;
 if ((yearNum % 4 == 0) && (yearNum % 100 != 0))
  isLeep = true;
 else if (yearNum % 400 == 0)
  isLeep = true;
 else {
  isLeep = false;
 }
 return isLeep;
 }
 /**
 * 判斷是否是日期
 *
 * @param date
 * @return
 */
 public static boolean isDate(String date) {
 //判斷年月日的正則表達(dá)式,接受輸入格式為2010-12-24,可接受平年閏年的日期
 String regex = "(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)";
 Pattern pattern = Pattern.compile(regex);
 return pattern.matcher(date).matches();
 }
 /**
 * 驗(yàn)證是不是生日
 *
 * @param birthday
 * @return
 */
 public static boolean verifyBirthDay(String birthday) {
 if (TextUtils.isEmpty(birthday)) return false;
 if (!birthday.contains("-")) return false;
 String[] arr = birthday.split("-");
 if (null == arr || arr.length != 3 || arr[0].length() != 4 || arr[1].length() != 2 || arr[2].length() != 2)
  return false;
 int year = getYear(new Date());
 int birthYear = Integer.parseInt(arr[0]);
 if (birthYear <= 1900 || birthYear > year) return false;
 String curDate = formatDate(new Date(), DATE_FORMAT);
 if (birthday.compareTo(curDate) > 0) return false;
 return isDate(birthday);
 }
 //-------------------自動(dòng)轉(zhuǎn)化--------------------------------------------
 /**
 * 把字符串自動(dòng)轉(zhuǎn)化為時(shí)間格式
 *
 * @param dateStr
 * @return
 */
 public static Date parseDateByAuto(String dateStr) {
 if (StringUtil.isEmpty(dateStr)) {
  return null;
 }
 String format = DATE_FORMAT;
 if (dateStr.indexOf("/") > -1) {
  format = format.replace("-", "/");
 }
 if (dateStr.indexOf(":") != -1) {
  format += " HH:mm";
 }
 //存在秒
 if (dateStr.indexOf(":") != dateStr.lastIndexOf(":")) {
  format += ":ss";
 }
 return parseDate(dateStr, format);
 }
 /**
 * 自動(dòng)識(shí)別格式
 * @param date
 * @return
 */
 public static String formatDateByAuto(Date date){
 String format = DATE_FORMAT;
 if( !(date instanceof java.sql.Date) && (date.getSeconds()>0||date.getMinutes()>0||date.getHours()>0)){
  format = DATETIME_FORMAT;
 }
 return formatDate(date, format);
 }
 //------------當(dāng)前日期與時(shí)間 --------------------------------
 /**取當(dāng)前日期*/
 public static Date getCurrDate() {return parseDate(formatDate(new Date())); }
 /**取當(dāng)前時(shí)間*/
 public static Date getCurrDateTime() {return parseDate(formatDate(new Date())); }
 /**取當(dāng)前日期*/
 public static String getCurrDateStr() { return formatDate(new Date()); }
 /**取當(dāng)前時(shí)間*/
 public static String getCurrDateTimeStr() { return formatDate(new Date(), DATETIME_FORMAT);}
 public static String formatCurrDate() {return formatDate(new Date(),DATE_FORMAT); }
 public static String formatCurrDateTime() {return formatDate(new Date(),DATETIME_FORMAT);}
 public static String formatCurrDateToS(String strFormat) {return formatDate(new Date(), strFormat); }
 //-----------時(shí)間計(jì)算--------------------------------------------
 /**
 * 時(shí)間相減
 * @param strDateBegin
 * @param strDateEnd
 * @param iType
 * @return
 */
 public static int getDiffDate(String strDateBegin, String strDateEnd, int iType) {
 Calendar calBegin = Calendar.getInstance();
 calBegin.setTime(parseDate(strDateBegin, DATETIME_FORMAT));
 Calendar calEnd = Calendar.getInstance();
 calBegin.setTime(parseDate(strDateEnd, DATETIME_FORMAT));
 long lBegin = calBegin.getTimeInMillis();
 long lEnd = calEnd.getTimeInMillis();
 if (iType == Calendar.SECOND)
  return (int) ((lEnd - lBegin) / 1000L);
 if (iType == Calendar.MINUTE)
  return (int) ((lEnd - lBegin) / 60000L);
 if (iType == Calendar.HOUR)
  return (int) ((lEnd - lBegin) / 3600000L);
 if (iType == Calendar.DAY_OF_MONTH) {
  return (int) ((lEnd - lBegin) / 86400000L);
 }
 return -1;
 }
 /**
 * 添加天數(shù)或月份或年得到新的時(shí)間
 *
 * @param strDate
 * @param count
 * @param dayType Calendar.YEAR
 * @return
 */
 public static String getAddDateTime(String strDate, int count, int dayType) {
 Calendar cal = Calendar.getInstance();
 cal.setTime(parseDate(strDate));
 cal.add(dayType, count);
 SimpleDateFormat sdf = null;
 if ((dayType == Calendar.YEAR) || (dayType == Calendar.MONTH) || (dayType == Calendar.DAY_OF_MONTH))
  sdf = new SimpleDateFormat(DATE_FORMAT);
 else
  sdf = new SimpleDateFormat(DATETIME_FORMAT);
 return sdf.format(cal.getTime());
 }
 /**
 * 日期增加天數(shù)
 * @param date
 * @param iCount
 * @return
 */
 public static Date getAddDate(Date date, int iCount) {
 Calendar cal = Calendar.getInstance();
 cal.setTime(date);
 cal.add(Calendar.DAY_OF_MONTH, iCount);
 return cal.getTime();
 }
 /**
 * 比較日期
 *
 * @param dateStr1
 * @param dateStr2
 * @return
 */
 public static int compareDate(String dateStr1, String dateStr2) {
 Date date1 = parseDate(dateStr1);
 Date date2 = parseDate(dateStr2);
 if (date1.getTime() > date2.getTime())
  return -1;
 else if (date1.getTime() < date2.getTime())
  return 1;
 else
  return 0;
 }
 public static int compareDate(Date date1, Date date2) {
 if (date1.getTime() > date2.getTime())
  return -1;
 else if (date1.getTime() < date2.getTime())
  return 1;
 else
  return 0;
 }
 /**
 * 時(shí)間差
 *
 * @param startDate
 * @param endDate
 * @return
 */
 public static int getDiffDays(Date startDate, Date endDate) {
 int days = 0;
 if (startDate.after(endDate)) {
  Date temp = startDate;
  startDate = endDate;
  endDate = temp;
 }
 days = (int) (endDate.getTime() - startDate.getTime()) / 1000 * 60 * 60 * 24;
 return days;
 }
 /**
 * 當(dāng)前日期的后幾天
 *
 * @param date
 * @param n
 * @return
 */
 public static Date getAfterDay(Date date, int n) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 c.add(Calendar.DATE, n);
 return c.getTime();
 }
 //---------獲取時(shí)間天數(shù)----------------------------------------------
 /**
 * 獲取當(dāng)前月的最后一天
 *
 * @param dateStr
 * @return
 */
 public static String getMonthEnd(String dateStr) {
 //當(dāng)前第一天
 Date date = parseDate(getMonthBegin(dateStr));
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 c.add(Calendar.MONTH, 1);
 c.add(Calendar.DAY_OF_YEAR, -1);
 return formatDate(c.getTime());
 }
 public static String getMonthEnd(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 c.set(Calendar.DATE, c.getActualMaximum(Calendar.DATE));
 return formatDate(c.getTime());
 }
 /**
 * 獲得當(dāng)前日期的月份第一天
 *
 * @param dateStr
 * @return
 */
 public static String getMonthBegin(String dateStr) {
 Date date = parseDate(dateStr);
 return formatDate(date, "yyyy-MM") + 01;
 }
 public static String getMonthBegin(Date date) {
 return formatDate(date, "yyyy-MM") + 01;
 }
 //--------------格式化日期-----------------------------------------
 /**
 * 格式化日期為字符串
 *
 * @param date
 * @param format
 * @return
 */
 public static String formatDate(Date date, String format) {
 return new SimpleDateFormat(format).format(date);
 }
 public static String formatDate(Date date) {
 return formatDate(date, DATE_FORMAT);
 }
 public static String formateChinaDate(Date date) {
 return formatDate(date, CHINA_DATE_FORMAT);
 }
 public static String formateDateTime(Date date) {
 return formatDate(date, DATETIME_FORMAT);
 }
 public static String formateTime(Date date) {
 return formatDate(date, TIME_FORMAT);
 }
 //-----------------格式化字符串為日期--------------------------------------
 /**
 * 格式化字符串為日期
 *
 * @param date
 * @param format
 * @return
 */
 public static Date parseDate(String date, String format) {
 try {
  return new SimpleDateFormat(format).parse(date);
 } catch (ParseException e) {
  e.printStackTrace();
 }
 return null;
 }
 public static Date parseDate(String date) { return parseDate(date, DATE_FORMAT);}
 public static Date parseChinaDate(String date) {
 return parseDate(date, CHINA_DATE_FORMAT);
 }
 public static Date parseDateTime(String date) {
 return parseDate(date, DATETIME_FORMAT);
 }
 public static Date parseTime(String date) {
 return parseDate(date, TIME_FORMAT);
 }
 //---獲取年月日時(shí)分秒----------------------------------------------------
 /**
 * 獲取年份
 *
 * @param date
 * @return
 */
 public static int getYear(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 return c.get(Calendar.YEAR);
 }
 /**
 * 獲取月份
 *
 * @param date
 * @return
 */
 public static int getMonth(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 return c.get(Calendar.MONTH) + 1;
 }
 /**
 * 獲取日
 *
 * @param date
 * @return
 */
 public static int getDay(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 return c.get(Calendar.DAY_OF_MONTH);
 }
 /**
 * 獲取星期
 *
 * @param date
 * @return
 */
 public static int getWeek(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 return c.get(Calendar.DAY_OF_WEEK);
 }
 /**
 * 獲取時(shí)間
 *
 * @param date
 * @return
 */
 public static int getHour(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 return c.get(Calendar.HOUR_OF_DAY);
 }
 /**
 * 獲取分種
 *
 * @param date
 * @return
 */
 public static int getMinute(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 return c.get(Calendar.MINUTE);
 }
 /**
 * 獲取秒
 *
 * @param date
 * @return
 */
 public static int getSecond(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 return c.get(Calendar.SECOND);
 }
 //--------------獲取星期幾---------------------------------------------------
 /**
 * 獲取星期幾
 *
 * @param strDate
 * @return
 */
 public static String getWeekDayName(String strDate) {
 String[] mName = {"日", "一", "二", "三", "四", "五", "六"};
 Date date = parseDate(strDate);
 int week = getWeek(date);
 return "星期" + mName[week];
 }
 public static String getWeekDayName(Date date) {
 String[] mName = {"日", "一", "二", "三", "四", "五", "六"};
 int week = getWeek(date);
 return "星期" + mName[week];
 }
 /**
 * 一年中的星期幾
 * @return
 */
 public static int getWeekNumOfYear(Date date) {
 Calendar calendar = Calendar.getInstance();
 calendar.setTime(date);
 return calendar.get(Calendar.WEEK_OF_YEAR);
 }
 public static int getWeekNumOfYear(String date) {
 Calendar calendar = Calendar.getInstance();
 calendar.setTime(parseDate(date, DATE_FORMAT));
 return calendar.get(Calendar.WEEK_OF_YEAR);
 }
 /**
 * 獲取本周星期一的日期
 * @param yearNum
 * @param weekNum
 * @return
 * @throws ParseException
 */
 public static String getYearWeekFirstDay(int yearNum, int weekNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(Calendar.YEAR, yearNum);
 cal.set(Calendar.WEEK_OF_YEAR, weekNum);
 cal.set(Calendar.DAY_OF_WEEK, 2);
 String tempYear = Integer.toString(yearNum);
 String tempMonth = Integer.toString(cal.get(Calendar.MONTH) + 1);
 String tempDay = Integer.toString(cal.get(Calendar.DAY_OF_MONTH)-1);
 return tempYear + "-" + tempMonth + "-" + tempDay;
 }
 /**
 * 獲取本周星期天的日期
 * @param yearNum
 * @param weekNum
 * @return
 * @throws ParseException
 */
 public static String getYearWeekEndDay(int yearNum, int weekNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(Calendar.YEAR, yearNum);
 cal.set(Calendar.WEEK_OF_YEAR, weekNum + 1);
 cal.set(Calendar.DAY_OF_WEEK, 1);
 String tempYear = Integer.toString(yearNum);
 String tempMonth = Integer.toString(cal.get(Calendar.MONTH) + 1);
 String tempDay = Integer.toString(cal.get(Calendar.DAY_OF_MONTH)-1);
 return tempYear + "-" + tempMonth + "-" + tempDay;
 }
 //--------------獲取天數(shù)---------------------------------------------------
 /**
 * 獲取某年某月的第一天
 * @param yearNum
 * @param monthNum
 * @return
 */
 public static Date getYearMonthFirstDay(int yearNum, int monthNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(yearNum, monthNum - 1, 1, 0, 0, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取某年下個(gè)月的第一天
 * @param yearNum
 * @param monthNum
 * @return
 */
 public static Date getNextYearMonthFirstDay(int yearNum, int monthNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(yearNum, monthNum, 1, 0, 0, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取某年某月的最后一天
 * @param yearNum
 * @param monthNum
 * @return
 */
 public static Date getYearMonthEndDay(int yearNum, int monthNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(yearNum, monthNum, 0, 0, 0, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取某月的第一天
 * @param date
 * @return
 */
 public static Date getYearMonthFirstDay(Date date) {
 Calendar cal = Calendar.getInstance();
 cal.setTime(date);
 cal.set(5, 1);
 cal.set(11, 0);
 cal.set(12, 0);
 cal.set(13, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取下一年的第一天
 * @param date
 * @return
 */
 public static Date getNextYearMonthFirstDay(Date date) {
 Calendar cal = Calendar.getInstance();
 cal.setTime(date);
 cal.add(2, 1);
 cal.set(5, 1);
 cal.set(11, 0);
 cal.set(12, 0);
 cal.set(13, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取當(dāng)前月的最后一天
 * @param date
 * @return
 */
 public static Date getYearMonthEndDay(Date date) {
 Calendar cal = Calendar.getInstance();
 cal.setTime(date);
 cal.set(5, cal.getActualMaximum(5));
 cal.set(11, 0);
 cal.set(12, 0);
 cal.set(13, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取當(dāng)年的第一天
 * @param yearNum
 * @return
 */
 public static Date getYearFirstDay(int yearNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(yearNum, 0, 1, 0, 0, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取下一年的第一天
 * @param yearNum
 * @return
 */
 public static Date getNextYearFirstDay(int yearNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(yearNum, 12, 1, 0, 0, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取當(dāng)年的最后一天
 * @param yearNum
 * @return
 */
 public static Date getYearEndDay(int yearNum) {
 Calendar cal = Calendar.getInstance();
 cal.set(yearNum, 12, 0, 0, 0, 0);
 cal.set(14, 0);
 return cal.getTime();
 }
 /**
 * 獲取當(dāng)前星期
 * @param strDate
 * @param weekNum
 * @return
 */
 public static String getWeek(String strDate, int weekNum) {
 Calendar c = Calendar.getInstance();
 c.setTime(parseDate(strDate));
 if (weekNum == 1)
  c.set(7, 2);
 else if (weekNum == 2)
  c.set(7, 3);
 else if (weekNum == 3)
  c.set(7, 4);
 else if (weekNum == 4)
  c.set(7, 5);
 else if (weekNum == 5)
  c.set(7, 6);
 else if (weekNum == 6)
  c.set(7, 7);
 else if (weekNum == 0)
  c.set(7, 1);
 return formatDate(c.getTime());
 }
 public static Date getWeek(Date date, int weekNum) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 if (weekNum == 1)
  c.set(7, 2);
 else if (weekNum == 2)
  c.set(7, 3);
 else if (weekNum == 3)
  c.set(7, 4);
 else if (weekNum == 4)
  c.set(7, 5);
 else if (weekNum == 5)
  c.set(7, 6);
 else if (weekNum == 6)
  c.set(7, 7);
 else if (weekNum == 0)
  c.set(7, 1);
 return c.getTime();
 }
 /**
 * 下個(gè)月日期
 * @param date
 * @return
 */
 public static Date getNextMonday(Date date) {
 Calendar c = Calendar.getInstance();
 c.setTime(date);
 do
  c.add(Calendar.DAY_OF_MONTH, 1);
 while (c.get(Calendar.DAY_OF_WEEK) != 2);
 return c.getTime();
 }
 /**
 * 獲得某一日期的前一天
 *
 */
 public static Date getPreviousDate(Date date) {
 Calendar calendar = Calendar.getInstance();
 calendar.setTime(date);
 calendar.add(Calendar.DATE, -1);
 calendar.set(Calendar.HOUR, 0);
 calendar.set(Calendar.SECOND, 0);
 calendar.set(Calendar.MINUTE, 0);
 calendar.set(Calendar.MILLISECOND, 0);
 return getSqlDate(calendar.getTime());
 }
 /**
 * 獲得某年某月最后一天的日期
 *
 */
 public static Date getLastDayOfMonth(int year, int month) {
 Calendar calendar = Calendar.getInstance();
 calendar.set(Calendar.YEAR, year);
 calendar.set(Calendar.MONTH, month);
 calendar.set(Calendar.DATE, 1);
 return getPreviousDate(getSqlDate(calendar.getTime()));
 }
 /**
 * 獲取一個(gè)月的天數(shù)
 * @param year
 * @param month
 * @return
 */
 public static int getDaysInMonth(int year, int month) {
 Calendar cal = Calendar.getInstance();
 cal.set(Calendar.YEAR, year);
 cal.set(Calendar.MONTH, month - 1);// Java月份才0開始算
 return cal.getActualMaximum(Calendar.DATE);
 }
 //----------------根據(jù)用戶生日計(jì)算年齡-------------------------------------------------
 /**
 * 根據(jù)用戶生日計(jì)算年齡
 */
 public static int getAgeByBirthday(Date birthday) {
 Calendar cal = Calendar.getInstance();
 if (cal.before(birthday)) {
  throw new IllegalArgumentException("The birthDay is before Now.It's unbelievable!");
 }
 int yearNow = cal.get(Calendar.YEAR);
 int monthNow = cal.get(Calendar.MONTH) + 1;
 int dayOfMonthNow = cal.get(Calendar.DAY_OF_MONTH);
 cal.setTime(birthday);
 int yearBirth = cal.get(Calendar.YEAR);
 int monthBirth = cal.get(Calendar.MONTH) + 1;
 int dayOfMonthBirth = cal.get(Calendar.DAY_OF_MONTH);
 int age = yearNow - yearBirth;
 if (monthNow <= monthBirth) {
  if (monthNow == monthBirth) {
  if (dayOfMonthNow < dayOfMonthBirth) {
   age--;
  }
  } else {
  age--;
  }
 }
 return age;
 }
 /**
 * 由java.util.Date到j(luò)ava.sql.Date的類型轉(zhuǎn)換
 *
 */
 public static Date getSqlDate(java.util.Date date) {
 return new Date(date.getTime());
 }
 public static void main(String[] args) {
 //dd
 System.out.println("億速云測(cè)試結(jié)果:");
 System.out.println("2017年 2月最后一天日期為:"+getLastDayOfMonth(2017, 2));
 System.out.println("2017年第一天日期為:"+getYearFirstDay(2017));
 System.out.println("2017年最后一天日期為:"+getYearEndDay(2017)); }
}

運(yùn)行結(jié)果:

Java日期操作方法工具類的示例分析

Java的優(yōu)點(diǎn)是什么

1. 簡(jiǎn)單,只需理解基本的概念,就可以編寫適合于各種情況的應(yīng)用程序;2. 面向?qū)ο螅?. 分布性,Java是面向網(wǎng)絡(luò)的語(yǔ)言;4. 魯棒性,java提供自動(dòng)垃圾收集來(lái)進(jìn)行內(nèi)存管理,防止程序員在管理內(nèi)存時(shí)容易產(chǎn)生的錯(cuò)誤。;5. 安全性,用于網(wǎng)絡(luò)、分布環(huán)境下的Java必須防止病毒的入侵。6. 體系結(jié)構(gòu)中立,只要安裝了Java運(yùn)行時(shí)系統(tǒng),就可在任意處理器上運(yùn)行。7. 可移植性,Java可以方便地移植到網(wǎng)絡(luò)上的不同機(jī)器。8.解釋執(zhí)行,Java解釋器直接對(duì)Java字節(jié)碼進(jìn)行解釋執(zhí)行。

關(guān)于“Java日期操作方法工具類的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI