第一个小程序

学习java到现在,尝试写了第一个小程序。

程序内容:一个输入日期然后可以打印日历并标注日期的小程序。

遇到的问题:1.如何解决遍历数组到星期6然后换行的问题。

      2.如何解决判断是否换行和遍历数字的先后问题。

解决方法:1.用除7的余数来解决,一周只有7天,用7减去前面得到的开始于星期几的数字,因为开始的第一天也算的,所以还要加1就得到了第一行末端的数字。因为后面都是7天一次换行了,所以用从0开始的一个计数器判断在除七余数是这个数字的时候换行。但是要排除一种特殊情况,如何这个月从星期日开始,就变成了判断除7是否余7,无法换行,必须考虑特殊情况。

    2.如果不考虑标示目标日期的情况下,2种都行,只是写法不同。但是要考虑一种情况如果标记的日期在最右端,计数器计数后就必须先判断然后换行,在继续遍历数字才满足条件。



 1 package 可视化日历;
 2
 3 import java.text.DateFormat;
 4 import java.text.ParseException;
 5 import java.text.SimpleDateFormat;
 6 import java.util.Calendar;
 7 import java.util.Date;
 8 import java.util.GregorianCalendar;
 9 import java.util.Scanner;
10 class Demo
11 {
12     public void run()
13     {
14         System.out.println("请输入日期:(格式为年-月-日)");
15         Scanner s=new Scanner(System.in);
16         String tamp=s.nextLine();//捕获输入的日期
17         DateFormat format =new SimpleDateFormat("yyyy-MM-dd");
18         try
19         {
20             Date d =format.parse(tamp);
21             Calendar calendar=new GregorianCalendar();
22             calendar.setTime(d);//将字符串转换为日历格式
23             int day=calendar.get(Calendar.DATE);
24             calendar.set(Calendar.DAY_OF_MONTH, 1);
25             int begin=calendar.get(Calendar.DAY_OF_WEEK);//得到这月开始于星期几。
26             int max=calendar.getActualMaximum(Calendar.DATE);//得到这个月有多少天。
27             System.out.println("日\t一\t二\t三\t四\t五\t六");
28             int b=0;
29             for(int x=1;x<begin;x++)//跳过前面,以便从正确的星期几开始。
30             {
31                 System.out.print("\t");
32             }
33             for(int a=1;a<=max;a++)//遍历日期,最大值为这个月最大的一天。
34             {
35                 if(day==a)
36                 {
37                     System.out.print("*\t");//标记选择的日期。
38                     b++;//b用来记录次数
39                 }
40                 else
41                 {    if(begin==1&&b%7==0)//特殊情况直接从星期日开始,余7的话,系统无法判断换行。
42                     {
43                         System.out.println();
44                     }
45                     if(b%7==(7-begin+1))//用于7的余数来解决换行问题。
46                     {
47                         System.out.println();
48                     }
49                     System.out.print(a+"\t");
50                     b++;
51                 }
52             }
53         }
54         catch (ParseException e)
55         {
56             System.out.println("输入格式错误");
57         }
58     }
59 }
60 public class Text_1
61 {
62     public static void main(String[] args)
63     {
64         Demo d=new Demo();
65         d.run();
66     }
67 }    


如果输入:2017.7.21日

结果为:

时间: 2024-10-27 04:46:27

第一个小程序的相关文章

微信小程序-----安装,编写第一个小程序和运行到手机端

第一步: 微信公众平台注册账号,并选择小程序,网址:mp.weixin.qq.com 填写相关信息,如:主体类型(个人或者企业) AppID  在开发中都是用的到的,服务器域名在网络请求也是用的到的. 完成信息之后,下载开发工具: 下载地址: https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html 选择自己需要的版本,下载直接安装,和平常的软件安装一样,直接运行 用微信扫码登录即可,然后点击添加项目, 输入申请的AppID

python 初探,第一个小程序

8-9年前有过一段时间的C语言编程经验,最近接触了一下python,解释性编程语言的结构相较于C语言还是更加方便的. 亲手写的第一个小程序实现的是系统登录功能,同一用户名输错3次密码,将会锁定此帐号. 写的过程中有几点感觉和C语言的差别, 代码行末不需要':'结尾, 程序段是通过相同的缩进,而不是{}.

python学习笔记(10)-python第一个小程序hello world

本节点标题1.第一个小程序hello world1.1.python2与python3的hello world1.2.换行的打印 =======================================================================================================================1.第一个小程序hello world1.1.python2与python3的hello world>>> print &q

Android编程权威指南-读书笔记(二)-第一个小程序

Android编程权威指南-读书笔记(二) -第一个小程序 第一个例子介绍 应用名为GeoQuiz.用户通过单击True或False按钮来回答屏幕上的问题,GeoQuiz可即时反馈答案正确与否. 这个例子为我们简单介绍了几个基本组件的使用,以及基本的事件监听.让我们对基本组件的使用和事件的监听有一个基本的了解. 这篇文章分为2个部分,第一部分就是创建简单的UI.第二个部分就是对这个UI增加代码来响应一些操作. (注:所有不明白或者不理解的东西其实都不重要,后面都会有更详细的介绍.) 本章的目标

ruby学习之一(安装、第一个小程序“hello, world”)

在网页http://www.rubychina.net/downloads/ 上找到 --〉Ruby on Windows --〉Ruby 1.8.6 One-Click Installer Stable version (recommended) 点击鼠标右键,另存为-,存入你的本地硬盘,这就完成了下载. 运行下载好的文件ruby185-21,出现安装向导界面,傻瓜式的安装不多敖述. 从Windows XP的开始-〉运行 -〉输入cmd,打开一个DOS窗口: 1. 版本 输入 ruby –v

2小时快速搭建第一个小程序,有可能吗

想搭建自己的小程序,有没有基础. 想让代理开发,无奈费用太高. 想提升小程序开发技能,应对职称技能竞争. 今年是小程序开发,应用爆发年,小程序开发和运营,发展的如火如荼.快来抢占自己的流量高地,快来截流互联网洪流,到自己的鱼塘. 学习就是增值,掌握了微信小程序,基本上也就掌握了百度,支付宝类小程序开发. 来吧,跟随David老师,一起学习,开启职场新技能.来吧,做为陕西省技术能手,电子商务师,David老师,相信自己有能力,带好大家,做好我们的训练营,让每一位学生,都有所成,学到技能. [零基础

我的第一个小程序

小程序,虽说小,但俗话说的好:“麻雀虽小五脏俱全”,我希望所有的IT工作者,从小程序出发,了解程序的所有结构联系,坚持下去,总有一天你会看到自己的努力换来的都是值得的,加油哦! 小程序初期模型的搭建推荐:https://qz.fkw.com tabbar所需的图标推荐下载网址:https://www.iconfont.cn 一.小程序的初始工作 1.现在微信公众平台注册微信小程序,获取APPID然后下载微信开发者工具,打开通过APPID创建自己的第一个小程序(注意必须将小程序的位置放到空目录下)

第一个小程序云笔记通过微信审核分享

今天快要下班了,都准备收拾电脑下班,突然微信推送了个消息:小程序通过微信审核了,按耐不住心中的喜悦,主动加班给大家分享这次通过审核的一些总结. 审核通过后,处于审核通过,待发布状态 小程序介绍 我们做的这个小程序是热点云笔记,是一个很简单的记事本,主要是通过微信登录,让用户免输入账号云端同步文本. 说了这么多,还不如截个图,所谓一图顶万言. 虽然审核通过了,但是还是有些总结的 (1)微信是否允许小程序的风格和微信的绿色风格出入很大? 从这个审核通过的分享来看,是没问题,我们是红色,和微信的整体风

小程序初体验:手把手教你写出第一个小程序(一)

本文笔者将根据quick start中的范例代码,带大家简单地剖析一下小程序的运行方式,并介绍小程序开发中一些通用的特性,带着大家一步步写出自己的小程序. 适用对象:前端初学者,对小程序开发感兴趣者 tips:由于笔者也是一位前端菜鸟,所以尽量用简单直白的语言为大家讲解,如有说的不到位的地方,还望多多指教. 吊了我们一年胃口的小程序终于和大家见面了.经过了一天的发酵,小程序已经成为了今天的超级头条(汪汪哭晕在厕所). 经历了一天媒体对小程序的狂轰滥炸,相信大家对于小程序一定充满了好奇.与其跟风转