V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
HFX3389
V2EX  ›  Java

Java 中有没有类似 Excel 表格一样的设定?

  •  
  •   HFX3389 · 2017-01-25 16:53:06 +08:00 · 2500 次点击
    这是一个创建于 2863 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想在寒假写一个 Java 程序,但是我们上课有的是单周上,双周不上;有的是单周不上,双周上;有的课是上到第 11 周;有的是上到第 18 周。

    所以就想弄一个输入单双周即可,然后根据单双周和第几周来确认本周的课表!

    现在的想法是根据输入的数,进行类似与 Excel 一样的表格输入,比如第 4 周要在星期一的 1-2 节上英语,就在 B3 上输出英语及课室。

    没错,我就是想要类似可以使用 B3,E4,F6 之类的来控制,并且在没有课的比如 B6 自动输出空格。

    7 条回复    2017-01-25 21:25:27 +08:00
    ezwd
        1
    ezwd  
       2017-01-25 17:30:53 +08:00
    用 Java 的 Date 类写个函数获取这周是开学第几周?用 Excel 的 WEEKNUM 函数?所以到底要做什么?
    suixn
        2
    suixn  
       2017-01-25 18:13:56 +08:00
    你是写逻辑还是展示课表?不是特别明白你意思。
    逻辑的话,课程类包含名称、地点、上课时间、上课周次。
    展示的话相应作出判断,得出要上的课就行。
    springmarker
        3
    springmarker  
       2017-01-25 19:00:43 +08:00 via Android
    二维数组不行吗
    ovear
        4
    ovear  
       2017-01-25 19:02:15 +08:00 via Android
    没看懂。。
    表格的话 jtable
    zhilincom
        5
    zhilincom  
       2017-01-25 20:45:07 +08:00
    构造一个数据库表,把所有课程名、起始日期、单双周标志输入数据库,然后每次运行程序时遍历数据库,根据每个课程的单双周标志、起始日期,以及输入的日期进行判断当前周是否有该课程,然后做输出就行了。
    HFX3389
        6
    HFX3389  
    OP
       2017-01-25 20:53:49 +08:00
    @ezwd
    @suixn
    @springmarker
    @ovear
    额,简单的说就是我输入第几周,输出第几周的课表。但是如果一周一周的做二维数组,在 JTable 的话感觉很麻烦,十八个周,每周五天,不觉得如果这样做很麻烦嘛!
    而且我们
    有的课是只在双周,也就是 2 , 4 , 6.etc 周上;
    有的课在第十周开始上;
    有的课在第 11 周也就是期中就结束!
    课表比较混乱,所以我就想用程序来帮忙!
    不是由我使用二维数组或者其它来确定课表(这样堆起来,写起来自己都麻烦),而是让程序拥有逻辑判断

    @zhilincom 可以,你这个方法不错!
    ovear
        7
    ovear  
       2017-01-25 21:25:27 +08:00
    @HFX3389
    很基础的面向对象设计啊

    class subject{
    name;
    start_week;
    end_week;
    type;//0 不分单双周 1 单周 双周
    }

    另外。。。超级课程表做的挺好的啊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4853 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 10:01 · PVG 18:01 · LAX 02:01 · JFK 05:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.