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
相关推荐
小白白3618 小时前
Pixelorama怎么用?像素画绘制和动画制作入门
windows
sukalot10 小时前
windows网络适配器驱动开发-WiFiCx Wi-Fi 7 功能要求(三)
windows·驱动开发
脚踏实地皮皮晨13 小时前
003003001_Grid控件
开发语言·windows·算法·c#·visual studio
ziguo112213 小时前
Windows API MessageBox 函数详解
c语言·c++·windows·visualstudio
sukalot15 小时前
windows网络适配器驱动开发-WiFiCx Wi-Fi 7 功能要求(二)
windows·驱动开发
山河不见老17 小时前
【Cursor 、Qoder安装问题】Cursor 、Qoder安装卡在“正在准备安装”问题排查及解决
人工智能·windows·编辑器
love530love17 小时前
Windows 原生编译 SGLang(2/8):三铁证判定可行 + --no-deps 外科手术式安装
windows·sglang
love530love18 小时前
Windows 原生编译 SGLang(4/8):环境关——VS 版本、venv 顺序、CUDA 多版本、生成器缓存
windows·缓存·sglang
2601_9623649718 小时前
Windows Hello 密钥生命周期科普:注册、鉴权、重置加密逻辑
windows·电脑
脚踏实地皮皮晨18 小时前
003003002_WPF Grid 基类官方类定义逐行深度解析
开发语言·windows·算法·c#·wpf·visual studio