重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
package com;
10年积累的做网站、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有龙城免费网站建设让你可以放心的选择与我们合作。
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
public class MyCalendar
{
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in);
String reg = "^(\\d+)[^\\d]+((0?[1-9])|(1[012]))$";
while(true)
{
System.out.println("输入年月(年和月用非数字隔开:如2015.1)(什么都不输入直接退出)");
String line = scanner.nextLine().trim();
if("".equals(line))
{
scanner.close();
break;
}
if(!line.matches(reg))
{
continue;
}
int year = Integer.parseInt(line.replaceAll(reg, "$1"));
int month = Integer.parseInt(line.replaceAll(reg, "$2"));
System.out.println("日\t一\t二\t三\t四\t五\t六");
Calendar calendar = Calendar.getInstance();
// 这个月的1号是星期几
calendar.set(year, month - 1, 1);
int day = calendar.get(Calendar.DAY_OF_WEEK);
int start = Calendar.SUNDAY;
calendar.add(Calendar.DATE, -day + start);
while(start day)
{
System.out.print(calendar.get(Calendar.DATE) + "\t");
calendar.add(Calendar.DATE, 1);
start++;
}
calendar.set(year, month - 1, 1);
Date now = calendar.getTime();
calendar.set(year, month, 1);
Date next = calendar.getTime();
for(Date cur = now; cur.before(next);)
{
calendar.setTime(cur);
int x = calendar.get(Calendar.DATE);
String tmp = x 10 ? "0" + x : x + "";
System.out.print(tmp + "\t");
if(calendar.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY)
{
System.out.println();
}
calendar.add(Calendar.DATE, 1);
cur = calendar.getTime();
}
calendar.add(Calendar.DATE, -1);
int to = calendar.get(Calendar.DAY_OF_WEEK);
int end = Calendar.SATURDAY;
while(to end)
{
calendar.add(Calendar.DATE, 1);
int x = calendar.get(Calendar.DATE);
String tmp = x 10 ? "0" + x : x + "";
System.out.print(tmp + "\t");
to++;
}
System.out.println("\r\n");
}
}
}
一年就是12个月嘛你建立一个数组 用来保存1--12的就行了嘛很简单,代码如下:int[] month=new int[]{1,2,3,4,5,...,12};这就是月份数组 当然你也可以用String类型的数组来保存
输入本年的某个月后,屏幕输出这个月的月历,每星期一行,从星期日开始,到星期六结束。
import java.util.*;
public class Year{
/**
*判断是否为闰年
*/
public boolean getIsRun(int year){
if((year%4==0 year %100 !=0)||(year%400==0)){
return true;
}
return false;
}
/**
*返回某年某月有多少天。
*/
public int getDay(int year ,int month){
int[] day={31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};//闰年月份
int[] day1={31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};//普通月份
if(this.getIsRun(year)){
return day[month+1];
}else{
return day1[month+1];
}
}
/**
*返回这个月的1号是星期几
*/
public int getWeek(int year,int month){
Date date=new Date();
date.setYear(year);
date.setMonth(month);
Calendar calendar=Calendar.getInstance();
calendar.setTime(date);
return calendar.get(calendar.DAY_OF_WEEK);
}
/**
*打印出来,嘎嘎
*/
public void showPrint(int year,int month){
int day=this.getDay(year,month);
int week=this.getWeek(year,month);
System.out.println("日\t一\t二\t三\t四\t五\t六\n");
for(int i=0;i=week;i++){//
System.out.print (" \t");
}
for(int j=1;j=day;j++){
if((j+week)%7==0){
System.out.println ();
}
System.out.print (j+"\t");
}
// System.out.println(week);
}
public static void main(String[] args){
Year y=new Year();
y.showPrint(2008,3);
}
}
int y; // year可以随便设定
int m; //month可以随便设定
int d=0; //day设默认
int i=0;
for(i 2000; i++){
if(y==4i){
switch [m]{
case '2'
return d=29;
break;
case '1'
case '3'
case '5'
case '7'
case '8'
case '10'
case '12'
return d=31;
default: return d=30;
}
}
else{
switch [m]{
case '2'
return d=28;
break;
case '1'
case '3'
case '5'
case '7'
case '8'
case '10'
case '12'
return d=31;
default: return d=30;
扩展质料:
switch语句执行时会从上到下根据括号中表达式的值作比较,当某个case语句中的表达式与此值相同时,就执行这个case语句或语句序列,直到遇到break为止。 break语句是必须有的,它用来结束switch语句的执行。
如果所有case语句后面的表达式都不等于switch语句的表达式expr1的值川0执行default后面的默认语句序列。不过,default部分是可选的。如果没有这一部分,并遇到所有case语句都不匹配,那么,就不作任何处理而进入后续程序段的执行。
可见,一个switch语句可以代替多个if-else语句组成的分支结构,而switch语句从思路上显得更清晰。
使用switch语句时,要注意expr1必须是符合byte,char,short,int类型的常量表达式,而不能用浮点类型或long类型,//(也不能为一个字符串)。
参考资料:switch-百度百科
下边是根据你的需求写的代码:
importjava.util.Calendar;
importjava.sql.Date;
publicclassTestAA{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
Calendarcld=Calendar.getInstance();
Datedate=newjava.sql.Date(1319534374312l);;
cld.setTime(date);
/**
*注:在jdk1.6以后下列方法都已过时
*date.getYear();
*date.getMonth();
*date.getDay();
*/
System.out.println("日期为:"+date.toString());
//方法一
System.out.println("年份:"+cld.get(Calendar.YEAR));
System.out.println("月份:"+(cld.get(Calendar.MONTH)+1));
System.out.println("日:"+cld.get(Calendar.DAY_OF_MONTH));
//方法er
System.out.println("年份:"+date.toString().split("-")[0]);
System.out.println("月份:"+date.toString().split("-")[1]);
System.out.println("日:"+date.toString().split("-")[2]);
}
}
技术优势:
与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun公司对Java编程语言的解释是:Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
Java平台是基于Java语言的平台。这样的平台非常流行。因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。java的应用已十分广泛。
Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。
JAVA的用途:80%以上的高端企业级应用都使用JAVA平台(电信、银行等)。JAVA是成熟的产品,已经有10年的历史。
自从1995年Sun公司正式发布Java1.0版以来,在全球范围内引发了经久不衰的Java热潮,Java的版本也不断更新到v1.1,v1.2,v1.3,v1.4,其内容也有了巨大的改进和扩充,还出现了标准版、企业版、服务器版等满足不同需要的版本。另外还有迅速发展的JavaBean,其它的Java编译器和集成开发环境等第三方软件。
import java.util.Scanner;
public class $ {
private static int[] DAYS = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("输入年份:");
int year = in.nextInt();
System.out.print("输入月份:");
int month = in.nextInt();
String str = year + "-" + month + ":";
// 闰年二月份
if (year % 400 == 0 || (year % 4 == 0 year % 100 != 0) month == 2) {
str += 29;
} else {
str += DAYS[month - 1];
}
System.out.println(str);
}
}