
代码
package com.ding.test;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.Year;
import java.util.Date;
public class PdRunNian {
public static void main(String[] args) throws ParseException {
System.out.println("=====判断闰年====");
int i = pdRunNian(2020);
System.out.println(i);
System.out.println("=======返回下一天=======");
String date = nextDate(2021, 10, 23, 6);
System.out.println("下一天为:"+date);
System.out.println("======今年第几天======");
int currentDate = currentDate(2021, 10, 23);
System.out.println("今年第几天:"+currentDate);
System.out.println("=======两个日期想差的天数========");
String dateStr = "1949-10-1 11:28:28";
String dateStr2 = "2021-10-23 11:28:28";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date2 = format.parse(dateStr2);
Date date1 = format.parse(dateStr);
int days = differentDaysByMillisecond(date1, date2);
System.out.println(days);
System.out.println("=====判断素数=====");
boolean b = PdSushu(7);
System.out.println("该数是素数吗:"+b);
System.out.println("验证哥德巴赫猜想");
Yanzhenh(7);
System.out.println("=====求最大最小值=====");
int[] a = {3, 4, 1, 2, 9, 4, 10, 32, 24, 42};
int[] mm = Mm(a);
System.out.println("最大值为:"+mm[0]+"索引为:"+mm[2]+"最小值为:"+mm[1]+"索引为:"+mm[3]);
}
//判定是否闰年,并返回一个整型值
public static int pdRunNian(int year){
int y=0;
if(year%400==0|| year%4==0&& year%100!=0){
y=1;
}
return y;
}
//获取并返回明天(下一天)的新日期
public static String nextDate(int year,int month,int day, int weekday){
int m[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if(pdRunNian(year)==1){
m[2]=29;
}
int a=year;
int b=month;
int c=day;
int d=weekday;
c=c+1;
if(c>m[b]){
c=1;
b=b+1;
if(b>12){
a=a+1;
b=1;
c=1;
}
}
d=d+1;
if(d>7){d=1;}
String n = String.valueOf(a) + String.valueOf(b)+ String.valueOf(c)+ String.valueOf(d);
return n;
}
//计算该日期是当年第几天
public static int currentDate(int year,int month,int day){
int m[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if(pdRunNian(year)==1){
m[2]=29;
}
int a=year;
int b=month;
int c=day;
c=c;
if(c>m[b]){
c=1;
b=b+1;
if(b>12){
a=a+1;
b=1;
c=1;
}
}
int n = 0;
for (int i = 0; i < month; i++) {
n += m[i];
}
return n + c;
}
//通过时间秒毫秒数判断两个时间的间隔
public static int differentDaysByMillisecond(Date date1, Date date2)
{
int days = (int) ((date2.getTime() - date1.getTime()) / (1000*3600*24));
return days;
}
//判断素数
public static boolean PdSushu(int num) {
boolean result = true;
for (int i = 2; i < num; ++i) {
if (num % i == 0) {
result = false;
break;
}
}
return result;
}
//验证哥德巴赫猜想
public static void Yanzhenh(int n) {
for (int a = 2; a <= n - 1; ++a) {
int b=n-a;
boolean x=PdSushu(a);
boolean y=PdSushu(b);
if(x&&y) {
System.out.println(a+"+"+b+"="+n);
}
}
}
//返回一个最大值和一个最小值
public static int [] Mm(int num[]) {
int[] result = new int[4];
result[0] = num[0];//最大
result[1] = num[1];//最小
for (int i = 0; i < num.length; i++) {
if (result[0] < num[i]) {
result[0] = num[i];
result[2] = i;//索引
}
if (result[1] > num[i]) {
result[1] = num[i];
result[3] = i;//索引
}
}
return result;
}
}
package com.ding.test;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.Year;
import java.util.Date;
public class PdRunNian {
public static void main(String[] args) throws ParseException {
System.out.println("=====判断闰年====");
int i = pdRunNian(2020);
System.out.println(i);
System.out.println("=======返回下一天=======");
String date = nextDate(2021, 10, 23, 6);
System.out.println("下一天为:"+date);
System.out.println("======今年第几天======");
int currentDate = currentDate(2021, 10, 23);
System.out.println("今年第几天:"+currentDate);
System.out.println("=======两个日期想差的天数========");
String dateStr = "1949-10-1 11:28:28";
String dateStr2 = "2021-10-23 11:28:28";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date2 = format.parse(dateStr2);
Date date1 = format.parse(dateStr);
int days = differentDaysByMillisecond(date1, date2);
System.out.println(days);
System.out.println("=====判断素数=====");
boolean b = PdSushu(7);
System.out.println("该数是素数吗:"+b);
System.out.println("验证哥德巴赫猜想");
Yanzhenh(7);
System.out.println("=====求最大最小值=====");
int[] a = {3, 4, 1, 2, 9, 4, 10, 32, 24, 42};
int[] mm = Mm(a);
System.out.println("最大值为:"+mm[0]+"索引为:"+mm[2]+"最小值为:"+mm[1]+"索引为:"+mm[3]);
}
//判定是否闰年,并返回一个整型值
public static int pdRunNian(int year){
int y=0;
if(year%400==0|| year%4==0&& year%100!=0){
y=1;
}
return y;
}
//获取并返回明天(下一天)的新日期
public static String nextDate(int year,int month,int day, int weekday){
int m[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if(pdRunNian(year)==1){
m[2]=29;
}
int a=year;
int b=month;
int c=day;
int d=weekday;
c=c+1;
if(c>m[b]){
c=1;
b=b+1;
if(b>12){
a=a+1;
b=1;
c=1;
}
}
d=d+1;
if(d>7){d=1;}
String n = String.valueOf(a) + String.valueOf(b)+ String.valueOf(c)+ String.valueOf(d);
return n;
}
//计算该日期是当年第几天
public static int currentDate(int year,int month,int day){
int m[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if(pdRunNian(year)==1){
m[2]=29;
}
int a=year;
int b=month;
int c=day;
c=c;
if(c>m[b]){
c=1;
b=b+1;
if(b>12){
a=a+1;
b=1;
c=1;
}
}
int n = 0;
for (int i = 0; i < month; i++) {
n += m[i];
}
return n + c;
}
//通过时间秒毫秒数判断两个时间的间隔
public static int differentDaysByMillisecond(Date date1, Date date2)
{
int days = (int) ((date2.getTime() - date1.getTime()) / (1000*3600*24));
return days;
}
public static boolean PdSushu(int num) {
boolean result = true;
for (int i = 2; i < num; ++i) {
if (num % i == 0) {
result = false;
break;
}
}
return result;
}
//验证哥德巴赫猜想
public static void Yanzhenh(int n) {
for (int a = 2; a <= n - 1; ++a) {
int b=n-a;
boolean x=PdSushu(a);
boolean y=PdSushu(b);
if(x&&y) {
System.out.println(a+"+"+b+"="+n);
}
}
}
//返回一个最大值和一个最小值
public static int [] Mm(int num[]) {
int[] result = new int[4];
result[0] = num[0];//最大
result[1] = num[1];//最小
for (int i = 0; i < num.length; i++) {
if (result[0] < num[i]) {
result[0] = num[i];
result[2] = i;//索引
}
if (result[1] > num[i]) {
result[1] = num[i];
result[3] = i;//索引
}
}
return result;
}
}
结果
=判断闰年
1
=返回下一天=
下一天为:202110247
今年第几天
今年第几天:296
=两个日期想差的天数==
26320
=判断素数=
该数是素数吗:true
验证哥德巴赫猜想
2+5=7
5+2=7
=求最大最小值=
最大值为:42索引为:9最小值为:1索引为:2
进程已结束,退出代码 0
有的要别人来设定目标,有的给别人设定目标;
有的需要感情支持生活,有的需要意志支持生活。