Java 如何将句子输入HashMap
我有一个程序,应该把英语翻译成一种虚构的语言,比如精灵语 我的第一个想法是使用hashmaps 但当然,我做不到Java 如何将句子输入HashMap,java,hashmap,translate,Java,Hashmap,Translate,我有一个程序,应该把英语翻译成一种虚构的语言,比如精灵语 我的第一个想法是使用hashmaps 但当然,我做不到 map.get(“你好,我是人类”); 让它勾选“你好”,“我”,“我”,“a”,“人类”,然后把它翻译成“你好,我是你的朋友”或“龙,机器猫-鲸鱼-马” 我该怎么做呢?我知道这可能不是你想要的,但我就是这样做的。可能有更好的方法可以做到这一点(我在想regex之类的),但我不知道如何做到这一点,所以这是我最好的方法 收集输入的句子 分词 如果单词在转换映射中: 检索转换后的单词
map.get(“你好,我是人类”);
让它勾选“你好”,“我”,“我”,“a”,“人类”,然后把它翻译成“你好,我是你的朋友”或“龙,机器猫-鲸鱼-马”
我该怎么做呢?我知道这可能不是你想要的,但我就是这样做的。可能有更好的方法可以做到这一点(我在想regex之类的),但我不知道如何做到这一点,所以这是我最好的方法
- 收集输入的句子
- 分词
- 如果单词在转换映射中:
- 检索转换后的单词并添加到数组中
ArrayList<String> strings = new ArrayList<>(Arrays.asList("hello world", "this is a test")); HashMap<String, String> map = new HashMap<>(); map.put("hello", "wordForHello"); map.put("world", "wordForWorld"); map.put("this", "wordForThis"); map.put("is", "wordForIs"); map.put("a", "wordForA"); map.put("test", "wordForTest"); ArrayList<String> sentence = new ArrayList<>(); for (String str : strings) { String[] words = str.split(" "); for (String word : words) { if (map.containsKey(word)) { sentence.add(map.get(word)); } } System.out.println(sentence); sentence = new ArrayList<>(); }
arrayliststrings=newarraylist(Arrays.asList(“helloworld”,“这是一个测试”); HashMap=newHashMap(); map.put(“hello”、“wordForHello”); 地图。put(“世界”、“单词世界”); 地图。放置(“这个”、“这个词”); 地图放置(“is”,“wordForIs”); 地图放置(“a”、“wordForA”); map.put(“test”、“wordForTest”); ArrayList语句=新的ArrayList(); for(字符串str:strings){ String[]words=str.split(“”); for(字符串字:字){ if(地图容器(word)){ 添加(map.get(word)); } } System.out.println(句子); 句子=新数组列表(); }