设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> Java >> 一个JAVA写的背单词程序
精品推荐
Java点击TOP10
·java笔试题
·《Thinking in Java》读书笔记
·JSP的mysql_jdbc驱动程序
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·Java Coder 常用软件下载地址
·org.apache.commons.dbcp.SQLNestedException解决办法
·Java图形界面开发:SWT全接触
·如何使用Java POI生成Excel表文件 !
·功能强大的在线网页编辑器
·一些非常不错的Struts 例子下载
编程开发点击TOP10
·ASP.NET 程序中常用的三十三种代码
·利用ASP.NET构建网上考试系统
·C#版的网站新闻发布系统
·(转)23种设计模式汇集
·设计ASP.NET新闻管理系统
·深山红叶袖珍PE工具箱V16正式版
·我的.NET书架 (入门篇)
·java笔试题
·C++经典电子书下载
·网页打印问题,打印设置,打印预览,打印分页,纵打,横打及页面的边距
精选专题

一个JAVA写的背单词程序

作者: 来源:网络文章 时间:2005-12-15 20:57:17

一个JAVA写的背单词程序(1) 俺看了一些Java, 写个程序出来玩玩。由于界面是用Jbuilder生成的,可能代码比较乱,而且还没合起来。目前版本是0.00001/* * Word.Java* * Created on 2004-9-26 * */package com.henry.vocabulary;import Java.util.*;import Java.text.*;public class Word { private static final SimpleDateFormat format = new SimpleDateFormat("yyyy-M-dd hh:mm:ss"); private static final int[] memoryCurve = { 1, 2, 4, 8, 12, 20, 36, 54, 87,160, 360 }; // Every "tomorrow" starts from 5AM, not from middle night. private static final int hourAdjust = -5; static Calendar today = Calendar.getInstance(); {today.add(Calendar.HOUR, hourAdjust); today.set(Calendar.HOUR,12);today.set(Calendar.MINUTE,0);today.set(Calendar.SECOND,0); } private String _WordValue; Date _nextReviewTime; int _reviewTimes; int _forgetTimes; /*** @param _WordValue The _WordValue to set.*/ public void setWordValue(String _WordValue) {this._WordValue = _WordValue; } /*** @return Returns the _WordValue.*/ public String getWordValue() {return _WordValue; } public Word(String WordValue, String nextReviewTime, int reviewTimes,int forgetTimes) {try {setWordValue(WordValue);_nextReviewTime = format.parse(nextReviewTime);_reviewTimes = reviewTimes;_forgetTimes = forgetTimes;} catch (ParseException pe) {System.out.println("The input is not a date!");throw new RuntimeException(pe);} } public Word(String strWord) {try {String[] values = strWord.split(",");setWordValue(values[0]);_nextReviewTime = format.parse(values[1]);_reviewTimes = Integer.parseInt(values[2].trim());if(values.length == 4) { // for compatible to the old version _forgetTimes = Integer.parseInt(values[3]);}else { _forgetTimes = 0;}} catch (ParseException pe) {System.out.println("The input is not a date!");throw new RuntimeException(pe);} } public void forget() {_nextReviewTime = today.getTime();_reviewTimes = 0;_forgetTimes++; } public void remember() {Calendar nextTime = (Calendar) today.clone();nextTime.add(Calendar.DATE, memoryCurve[_reviewTimes]);_nextReviewTime = nextTime.getTime();_reviewTimes++; } public String toString() {final SimpleDateFormat format2 = new SimpleDateFormat("yyyy-M-dd hh:mm:ss");String s = getWordValue() + "," + format2.format(_nextReviewTime) + ","+ _reviewTimes + "," + _forgetTimes;return s; }/*** Judge if this Word need to be reviewed today.* Comment for isNeedReview*/ public boolean isNeedReview() {if(this._nextReviewTime.after(today.getTime())) {return false;}return true; } public static void main(String[] args) {Word w = new Word("test", "2004-8-30", 2, 3);Word w1 = new Word("test,2004-8-30,2,3");System.out.println(w);w.remember();System.out.println(w);w.forget();System.out.println(w);System.out.println(w1);w1.remember();System.out.println(w1);w1.forget();System.out.println(w1); }}/* * WordsReview.Java* * Created on 2004-9-26 * */package com.henry.vocabulary;import Java.util.*;import Java.io.*;/** * @author Henry * */public class WordsReview {List WordList = new ArrayList(); List WordNeedReviewList = new ArrayList(); Word currentWord;/*** @param fileName*/ public void readFromFile(String fileName){try{StringBuffer sb = new StringBuffer();BufferedReader br = new BufferedReader(new FileReader(fileName));String s;while ((s = br.readLine()) != null) { this.currentWord = new Word(s); this.WordList.add(this.currentWord); if(this.currentWord.isNeedReview()){this.WordNeedReviewList.add(this.currentWord); }}this.currentWord = null;} catch (FileNotFoundException e) {System.out.println(e);System.out.println(e.getStackTrace());} catch (IOException ioe) {System.out.println(ioe);System.out.println(ioe.getStackTrace());} }/*** @param fileName*/ public void saveToFile(String fileName){}/*** Get a Word, which needs to be reviewed.* @return*/ public String getWord(){if(this.WordNeedReviewList.isEmpty()){return null;} Random random = new Random();int ramdonIndex = random.nextInt() % this.WordNeedReviewList.size();currentWord = (Word)this.WordNeedReviewList.get(ramdonIndex);return currentWord.getWordValue(); } public void saveWord(boolean isForget){if(this.currentWord == null){System.out.println("Should not come here!");System.out.println("When you call saveWord to save the Word, ");System.out.println(" you should get the Word first.");return;}if(isForget) {this.currentWord.forget();}else {this.currentWord.remember();this.WordNeedReviewList.remove(currentWord);} }public static void main(String[] args) {WordsReview wr = new WordsReview();wr.readFromFile("HenryPan.txt");String s = wr.getWord();wr.saveWord(false); }}// MainFrame.Javapackage app2;import Java.awt.*;import Java.awt.event.*;import Javax.swing.*;/** *

共3页 9 7 [1] [2] [38 :>

一个JAVA写的背单词程序 相关文章:
一个JAVA写的背单词程序 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com