JAVA版日语50音训练(读音强化记忆)

一个小时完全掌握,三天完全记忆忘不掉

java 复制代码
package org.ai.gatewaytest.controller;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        //list.add("そ|so");
        //list.add("さ|sa");
        //list.add("た|ta");
        //list.add("い|i");
        //list.add("い|i");
        //list.add("う|u");
        //list.add("く|ku");
        //list.add("つ|tu");
        //list.add("ぬ|nu");
        //list.add("ふ|hu");
        //list.add("う|u");
        //list.add("え|e");
        //list.add("え|e");
        //list.add("え|e");
        //list.add("へ|he");
        //list.add("ん|n");
        //list.add("い|i");

        //list.add("か|ka");
        //list.add("こ|ko");
        //list.add("せ|se");
        //list.add("し|si");
        //list.add("ひ|hi");
        //list.add("ゆ|yu");
        //list.add("ち|ti");
        //list.add("と|to");
        //list.add("あ|a");

        //list.add("な|na");
        //list.add("ま|ma");
        //list.add("わ|wa");
        //list.add("に|ni");
        //list.add("り|ri");
        //list.add("み|mi");
        //list.add("す|su");
        //list.add("て|te");
        //list.add("よ|yo");
        //list.add("を|wo");
        //list.add("む|mu");
        //list.add("め|me");
        //list.add("れ|re");
        //ist.add("ほ|ho");
        //list.add("や|ya");
        //list.add("る|ru");
        //list.add("も|mo");
        //list.add("ろ|ro");
        //list.add("け|ke");
        //list.add("の|no");

        //list.add("は|ha");
        //list.add("ら|ra");
        //list.add("き|ki");
        //list.add("ね|ne");
        //list.add("お|o");

        // 按罗马音排序,合并同发音的平假名+片假名
        list.add("あ - ア|a");
        list.add("い - イ|i");
        list.add("う - ウ|u");
        list.add("え - エ|e");
        list.add("お - オ|o");
        list.add("か - カ|ka");
        list.add("き - キ|ki");
        list.add("く - ク|ku");
        list.add("け - ケ|ke");
        list.add("こ - コ|ko");
        list.add("さ - サ|sa");
        list.add("し - シ|si"); // 注:シ罗马音也可写shi,与し的si发音一致
        list.add("す - ス|su");
        list.add("せ - セ|se");
        list.add("そ - ソ|so");
        list.add("た - タ|ta");
        list.add("ち - チ|ti"); // 注:チ罗马音也可写chi,与ち的ti发音一致
        list.add("つ - ツ|tu"); // 注:ツ罗马音也可写tsu,与つ的tu发音一致
        list.add("て - テ|te");
        list.add("と - ト|to");
        list.add("な - ナ|na");
        list.add("に - ニ|ni");
        list.add("ぬ - ヌ|nu");
        list.add("ね - ネ|ne");
        list.add("の - ノ|no");
        list.add("は - ハ|ha");
        list.add("ひ - ヒ|hi");
        list.add("ふ - フ|hu"); // 注:フ罗马音也可写fu,与ふ的hu发音一致
        list.add("へ - ヘ|he");
        list.add("ほ - ホ|ho");
        list.add("ま - マ|ma");
        list.add("み - ミ|mi");
        list.add("む - ム|mu");
        list.add("め - メ|me");
        list.add("も - モ|mo");
        list.add("や - ヤ|ya");
        list.add("ゆ - ユ|yu");
        list.add("よ - ヨ|yo");
        list.add("ら - ラ|ra");
        list.add("り - リ|ri");
        list.add("る - ル|ru");
        list.add("れ - レ|re");
        list.add("ろ - ロ|ro");
        list.add("わ - ワ|wa");
        list.add("を - ヲ|wo");
        list.add("ん - ン|n");

        // 浊音:が行、ざ行、だ行、ば行
        list.add("が - ガ|ga");
        list.add("ぎ - ギ|gi");
        list.add("ぐ - グ|gu");
        list.add("げ - ゲ|ge");
        list.add("ご - ゴ|go");

        list.add("ざ - ザ|za");
        list.add("じ - ジ|ji");
        list.add("ず - ズ|zu");
        list.add("ぜ - ゼ|ze");
        list.add("ぞ - ゾ|zo");

        list.add("だ - ダ|da");
        list.add("ぢ - ヂ|ji"); // ぢ/ヂ与じ/ジ发音相同,罗马音统一为ji
        list.add("づ - ヅ|zu"); // づ/ヅ与ず/ズ发音相同,罗马音统一为zu
        list.add("で - デ|de");
        list.add("ど - ド|do");

        list.add("ば - バ|ba");
        list.add("び - ビ|bi");
        list.add("ぶ - ブ|bu");
        list.add("べ - ベ|be");
        list.add("ぼ - ボ|bo");

        // 半浊音:ぱ行
        list.add("ぱ - パ|pa");
        list.add("ぴ - ピ|pi");
        list.add("ぷ - プ|pu");
        list.add("ぺ - ペ|pe");
        list.add("ぽ - ポ|po");

        Random random = new Random();
        Scanner scanner = new Scanner(System.in);

        System.out.println("欢迎使用日语学习程序!输入 'exit' 退出程序。");

        while (true) {
            // 生成0-50的随机数(实际上是从list中随机选择,list长度为50)
            int randomIndex = random.nextInt(list.size());
            String selected = list.get(randomIndex);

            // 分割字符串,获取|前后的字符
            String[] parts = selected.split("\\|");
            String japaneseChar = parts[0];  // 分割符前的日语字符
            String romanChar = parts[1];     // 分割符后的罗马音

            System.out.println("请输入 " + japaneseChar + " 的罗马音:");

            String userInput = scanner.nextLine();

            if ("exit".equalsIgnoreCase(userInput)) {
                System.out.println("感谢使用,再见!");
                break;
            }

            if (userInput.equalsIgnoreCase(romanChar)) {
                System.out.println("正确!");
            } else {
                System.out.println("错误!正确答案是: " + romanChar);
            }
        }

        scanner.close();
    }
}

浊音,半浊音

类别 片假名 平假名 罗马音 片假名 平假名 罗马音 片假名 平假名 罗马音 片假名 平假名 罗马音 片假名 平假名 罗马音
浊音 が行 ga gi gu ge go
浊音 ざ行 za ji zu ze zo
浊音 だ行 da ji zu de do
浊音 ば行 ba bi bu be bo
半浊音 ぱ行 pa pi pu pe po
相关推荐
蚰蜒螟4 小时前
深入 Linux 内核同步机制:从 futex 到 spinlock 的完整旅程
linux·windows·microsoft
dllmayday5 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
Curtain_Gin11 小时前
windows nvim lazy
windows
生而为虫14 小时前
Claude Code 最新版安装教程(Windows/Mac/Linux 全平台) 面向普通用户的 Claude Code 安装与模型接入指南
linux·windows·macos
DevilSeagull14 小时前
Windows 批处理 (Batch) 编程: 从入门到入土. (一) 基础概念与环境配置
开发语言·windows·后端·batch·语言
CyL_Cly14 小时前
Parsec(parsec安卓/windows/macos下载)
windows
2601_9583205716 小时前
【小白零基础上手 】钉钉内部机器人接入 OpenClaw 完整流程讲解(含安装包)
人工智能·windows·机器人·钉钉·open claw·open claw安装
love530love16 小时前
f2 项目(多平台的作品下载与接口数据处理)源码部署记录
人工智能·windows·f2
生而为虫17 小时前
在VScode中使用Claude Code agent并配置模型(仅mac电脑实际操作,windows电脑未实际操作如有问题可留言)
windows·vscode·macos
叶小鸡17 小时前
Java 篇-项目实战-天机学堂(从0到1)-day10
windows·microsoft