用Java创建一个简单的电子词典

193 篇文章 0 订阅
157 篇文章 0 订阅

创建一个简单的电子词典,可以使用Java的HashMap进行键值对的映射,其中键(Key)是单词,值(Value)是单词的定义。以下是一个简单电子词典的实现:

import java.util.HashMap;
import java.util.Scanner;

public class ElectronicDictionary {
    private HashMap<String, String> dictionary;

    public ElectronicDictionary() {
        this.dictionary = new HashMap<>();
        initializeDictionary();
    }

    // 初始化一些词汇和定义
    private void initializeDictionary() {
        addWord("example", "a representative form or pattern");
        addWord("dictionary", "a reference book containing words");
        addWord("java", "a high-level programming language");
    }

    // 添加新的单词和定义
    public void addWord(String word, String definition) {
        dictionary.put(word, definition);
    }

    // 查询单词的定义
    public String getDefinition(String word) {
        return dictionary.getOrDefault(word, "Word not found in dictionary.");
    }

    public static void main(String[] args) {
        ElectronicDictionary dictionary = new ElectronicDictionary();
        Scanner scanner = new Scanner(System.in);

        while (true) {
            System.out.println("Welcome to Electronic Dictionary!");
            System.out.println("1) Look up a word");
            System.out.println("2) Add a new word");
            System.out.println("3) Exit");
            System.out.print("Choose an option: ");

            int option = scanner.nextInt();
            scanner.nextLine(); // Consume newline

            switch (option) {
                case 1:
                    System.out.print("Enter a word to look up: ");
                    String wordToLookUp = scanner.nextLine();
                    System.out.println("Definition: " + dictionary.getDefinition(wordToLookUp));
                    break;
                case 2:
                    System.out.print("Enter a word to add: ");
                    String wordToAdd = scanner.nextLine();
                    System.out.print("Enter the definition: ");
                    String definitionToAdd = scanner.nextLine();
                    dictionary.addWord(wordToAdd, definitionToAdd);
                    System.out.println("Word added successfully!");
                    break;
                case 3:
                    System.out.println("Exiting dictionary...");
                    scanner.close();
                    return;
                default:
                    System.out.println("Invalid option. Please try again.");
            }
        }
    }
}

这个电子词典程序执行以下功能:

- 初始化:在`initializeDictionary()`中预加载了一些单词定义。
- 查询:用户可以查找已经添加到字典中的单词。
- 添加:用户可以将新的单词及其定义添加到字典中。
- 退出:程序包括一个退出循环的选项。

当人们运行该程序时,它会提供一个简单的菜单,供用户选择要执行的操作。注意,程序中使用`scanner.nextLine()`来读取字符串,以防止常见的`nextLine()`问题。

这个电子词典是非常基础的版本,有很多可以改进的地方。在实际应用中,你可能需要包括持久性存储、网络查找、界面设计、数据同步、多语言支持、丰富的单词条目等功能。😄📚📖

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
package shiyan; import java.awt.*; import java.awt.event.*; import java.sql.*; import javax.swing.*; public class AddWin extends JFrame implements ActionListener { private static MySqlUtils mySqlUtils = new MySqlUtils(); JTextField 添加汉语解释_文本条, 添加英语单词_文本条; JButton addbtn, cancelbtn; Connection Con = null; Statement Stmt = null; public AddWin() { super("添加单词"); this.setBounds(250, 250, 250, 200); this.setVisible(true); JPanel p1 = new JPanel(); p1.add(new Label("输入要添加的单词:")); 添加英语单词_文本条 = new JTextField(20); p1.add(添加英语单词_文本条); p1.add(new Label("输入添加的单词的解释:")); 添加汉语解释_文本条 = new JTextField(20); p1.add(添加汉语解释_文本条); addbtn = new JButton("提交"); cancelbtn = new JButton("取消"); p1.add(addbtn); p1.add(cancelbtn); this.add(p1); addbtn.addActionListener(this); cancelbtn.addActionListener(this); this.validate(); } public void actionPerformed(ActionEvent e) { if (e.getSource() == addbtn) { if (添加英语单词_文本条.getText().equals("") || 添加汉语解释_文本条.getText().equals("")) { JOptionPane.showMessageDialog(this, "添加的单词或解释不能为空~", "警告", JOptionPane.WARNING_MESSAGE); } else { try { Word word = new Word(); word.setEnglish(添加英语单词_文本条.getText().toString()); word.setChinese(添加汉语解释_文本条.getText().toString()); mySqlUtils.insert(word); 添加英语单词_文本条.setText(""); 添加汉语解释_文本条.setText(""); } catch (Exception ee) { } } } else if (e.getSource() == cancelbtn) { dispose(); } } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猴哥是肖鸿

idea的使用与分享

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值