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
相关推荐
小飞侠在吗1 小时前
Windows 下 Nginx 访问 127.0.0.1 报 50x 错误:根因是路径里 \t 被当成 Tab
运维·windows·nginx
水饺编程5 小时前
第5章,[Win32 章节] :贝塞尔样条曲线(一)
c语言·c++·windows·visual studio
辻弋2015 小时前
一键优化电源计划、游戏模式、独显强制、禁用后台录制——DeltaForceBooster专治三角洲行动卡顿掉帧,所有改动可一键还原
服务器·数据库·windows·游戏·电脑·php
言乐66 小时前
Python实现自动拉人脚本示例
开发语言·windows·python·django·pygame
深念Y7 小时前
OnlyOffice 打开来自 Windows/WPS 的 Office 文档时,出现排版错乱、文字空白、字体显示异常。
linux·windows·debian·onlyoffice·字体·wps·office
易点云徐源7 小时前
(已解决)adb devices 不显示设备,但 Windows 的 ADB Interface 正常:一次 WinUSB 与旧版 ADB 兼容性排查实战
windows·adb
奈斯先生Vector7 小时前
OpenScience 安装失败怎么办?Windows 环境、API 配置与本地服务排错指南
人工智能·windows·架构·开源·aigc·midjourney
AxureMost7 小时前
C盘清理工具 LightC
windows
csdn_aspnet8 小时前
C# 高效便利的处理数据
开发语言·windows·c#
淡海水8 小时前
03-02-线性-List-T-动态数组布局-扩容与操作成本
数据结构·windows·c#·list·编译·clr·机器码