Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的莫尔斯电码转换器_Java_Morse Code - Fatal编程技术网

Java中的莫尔斯电码转换器

Java中的莫尔斯电码转换器,java,morse-code,Java,Morse Code,请帮我解决这个问题: 我有两个列表:字母(包含所有字母)和符号(包含所有莫尔斯电码符号)。我需要两个人写一个把一个字转换成莫尔斯电码的方法。在我看来,下一个想法应该是:将单词拆分成字母,然后用符号重放字母 class Morse { void Code(char let){ // what should I write here? } } 您需要将字母映射到符号。我通常更喜欢地图,你可以通过它初始化 Map<Letter,Symbol> morseCode = n

请帮我解决这个问题:

我有两个列表:
字母
(包含所有字母)和
符号
(包含所有莫尔斯电码符号)。我需要两个人写一个把一个字转换成莫尔斯电码的方法。在我看来,下一个想法应该是:将单词拆分成字母,然后用符号重放字母

class Morse {
   void Code(char let){
   // what should I write here?
   }
}

您需要将字母映射到符号。我通常更喜欢地图,你可以通过它初始化

Map<Letter,Symbol> morseCode = new HashMap<Letter, Symbol>();
for (int i =0; i< YOURLETTERS.size(); i++) {
   morseCode.put(YOURLETTERS.get(i), YOURSYMBOLS.get(i));
}
Map morseCode=newhashmap();
对于(int i=0;i

然后,如您所说,逐个字符地浏览消息字符串,查找映射并将符号添加到结果中(可能是数组或列表)

您需要将字母映射到符号。我通常更喜欢地图,你可以通过它初始化

Map<Letter,Symbol> morseCode = new HashMap<Letter, Symbol>();
for (int i =0; i< YOURLETTERS.size(); i++) {
   morseCode.put(YOURLETTERS.get(i), YOURSYMBOLS.get(i));
}
Map morseCode=newhashmap();
对于(int i=0;i

然后,如您所说,逐个字符地浏览消息字符串,查找映射并将符号添加到结果中(可能是数组或列表)

从这两个列表创建一个转换表并使用它

public class Morse {

    List<Character> letters = ...
    List<String> codes = ...

    Map<Character, String> conversionTable = new HashMap<Character, String>();

    public void init() {
        int t = 0;
        for(Character c : letters) {
            conversionTable.put(c, codes.get(t));
            t++;
        }
    }

    public String code(char let){
        return conversionTable.get(let);
    }

}
公共级莫尔斯电码{
列出字母=。。。
列表代码=。。。
Map conversionTable=新的HashMap();
公共void init(){
int t=0;
for(字符c:字母){
conversionTable.put(c,code.get(t));
t++;
}
}
公共字符串代码(charlet){
返回conversionTable.get(let);
}
}

从两个列表中创建一个转换表并使用它

public class Morse {

    List<Character> letters = ...
    List<String> codes = ...

    Map<Character, String> conversionTable = new HashMap<Character, String>();

    public void init() {
        int t = 0;
        for(Character c : letters) {
            conversionTable.put(c, codes.get(t));
            t++;
        }
    }

    public String code(char let){
        return conversionTable.get(let);
    }

}
公共级莫尔斯电码{
列出字母=。。。
列表代码=。。。
Map conversionTable=新的HashMap();
公共void init(){
int t=0;
for(字符c:字母){
conversionTable.put(c,code.get(t));
t++;
}
}
公共字符串代码(charlet){
返回conversionTable.get(let);
}
}

“//我应该在这里写什么?”代码。如果你提出了一个更具体的问题,请随意提问。顺便说一句,方法名应该以小写字母开头。我不知道算法(代码)应该是什么样子。你需要映射。“//我应该在这里写什么?”代码。如果你提出了一个更具体的问题,请随意提问。顺便说一句,方法名应该以小写字母开头。我不知道算法(代码)应该是什么样子。你需要映射。最好将初始化设置为。。初始化块。转换表的外观如何?最好将初始化输出到。。初始化块。转换表是什么样子的?