Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/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摩尔斯电码应用程序(gui)_Java_User Interface_Morse Code - Fatal编程技术网

Java摩尔斯电码应用程序(gui)

Java摩尔斯电码应用程序(gui),java,user-interface,morse-code,Java,User Interface,Morse Code,关于我的计划,我有几个问题。我正在尝试创建一个JavaGUI程序,它接受用户输入(eng),然后将其转换为摩尔斯电码。我需要逐个检查输入的字符。我该怎么做?我知道你需要使用charAt(i)来实现这个功能,但我真的不知道如何将它应用到这个程序中。另外,如何将StringBuilder转换为字符串,以放入标签中?非常感谢您抽出时间。这是我到目前为止得到的 Map<Character,String> charToCode = new HashMap<Character,St

关于我的计划,我有几个问题。我正在尝试创建一个JavaGUI程序,它接受用户输入(eng),然后将其转换为摩尔斯电码。我需要逐个检查输入的字符。我该怎么做?我知道你需要使用charAt(i)来实现这个功能,但我真的不知道如何将它应用到这个程序中。另外,如何将StringBuilder转换为字符串,以放入标签中?非常感谢您抽出时间。这是我到目前为止得到的

    Map<Character,String> charToCode = new HashMap<Character,String>();
    charToCode.put('A', ".-");
    charToCode.put('B', "-...");
    charToCode.put('C', "-.-.");
    charToCode.put('D', "-..");
    charToCode.put('E', ".");
    charToCode.put('F', "..-.");
    charToCode.put('G', "--.");
    charToCode.put('H', "....");
    charToCode.put('I', "....");
    charToCode.put('J', ".---");
    charToCode.put('K', "-.-");
    charToCode.put('L', ".-..");
    charToCode.put('M', "--");
    charToCode.put('N', "-.");
    charToCode.put('O', "---");
    charToCode.put('P', ".--.");
    charToCode.put('Q', "--.-");
    charToCode.put('R', ".-.");
    charToCode.put('S', "...");
    charToCode.put('T', "-");
    charToCode.put('U', "..-");
    charToCode.put('V', "...-");
    charToCode.put('W', "..-");
    charToCode.put('X', "-..-");
    charToCode.put('Y', "-.--");
    charToCode.put('Z', "--..");




   text1.addActionListener(new ActionListener()
    {
     public void actionPerformed(ActionEvent e)
     {
       String input = text2.getText();
       label.setText(input);
     }
   });

     button.addActionListener(new ActionListener()
      {
        public void actionPerformed(ActionEvent e)
        {
        String input = text1.getText();
        label.setText(charToCode);
        }
     });
Map charToCode=newhashmap();
charToCode.put('A',“-”);
charToCode.put('B',“-…”);
图表代码put('C',“-。-”);
图表代码put('D',“-…”);
charToCode.put('E',”);
图表代码put('F',“.-”);
charToCode.put('G',“-”);
charToCode.put('H',“…”);
charToCode.put('I',“…”);
charToCode.put('J',“-”);
图表代码put('K',“-。-”);
charToCode.put('L',“-…”);
charToCode.put('M',“-”);
图表代码put('N',“-”);
charToCode.put('O',“--”);
图表代码put('P',“-”);
图表代码put('Q',“-.-”);
图表代码put('R',“-”);
charToCode.put('S',“…”);
图表代码put('T',“-”);
图表代码put('U',“.-”);
图表代码put('V',“…-”);
图表代码put('W',“.-”);
图表代码put('X',“-…-”);
图表代码put('Y',“-.-”);
charToCode.put('Z',“--…”);
text1.addActionListener(新ActionListener()
{
已执行的公共无效操作(操作事件e)
{
字符串输入=text2.getText();
label.setText(输入);
}
});
addActionListener(新建ActionListener())
{
已执行的公共无效操作(操作事件e)
{
字符串输入=text1.getText();
label.setText(图表代码);
}
});

使用for循环迭代字符串中的所有字符。对于从
StringBuilder
String
的转换:返回
StringBuilder
的内容

public String parseCode(Map<Character , String> morseAlphabet , String input){
    StringBuilder morse = new StringBuilder();

    //iterate over the indices of all characters in range
    for(int i = 0 ; i < input.length() ; i++)
        if(morseAlphabet.get(input.charAt(i)) == null)
            //the character has no valid representation in morse-alphabet
            throw new IllegalArgumentException("unknown sign: \\u" + (int) input.charAt(i));
        else
            //append the correct morsesign to the output
            morse.append(morseAlphabet.get(input.charAt(i)));

    return morse.toString();
}
publicstringparsecode(映射morseAlphabet,字符串输入){
StringBuilder morse=新的StringBuilder();
//迭代范围内所有字符的索引
对于(int i=0;i
使用for循环迭代字符串中的所有字符。对于从
StringBuilder
String
的转换:返回
StringBuilder
的内容

public String parseCode(Map<Character , String> morseAlphabet , String input){
    StringBuilder morse = new StringBuilder();

    //iterate over the indices of all characters in range
    for(int i = 0 ; i < input.length() ; i++)
        if(morseAlphabet.get(input.charAt(i)) == null)
            //the character has no valid representation in morse-alphabet
            throw new IllegalArgumentException("unknown sign: \\u" + (int) input.charAt(i));
        else
            //append the correct morsesign to the output
            morse.append(morseAlphabet.get(input.charAt(i)));

    return morse.toString();
}
publicstringparsecode(映射morseAlphabet,字符串输入){
StringBuilder morse=新的StringBuilder();
//迭代范围内所有字符的索引
对于(int i=0;i
使用for循环迭代字符串中的所有字符。对于从
StringBuilder
String
的转换:返回
StringBuilder
的内容

public String parseCode(Map<Character , String> morseAlphabet , String input){
    StringBuilder morse = new StringBuilder();

    //iterate over the indices of all characters in range
    for(int i = 0 ; i < input.length() ; i++)
        if(morseAlphabet.get(input.charAt(i)) == null)
            //the character has no valid representation in morse-alphabet
            throw new IllegalArgumentException("unknown sign: \\u" + (int) input.charAt(i));
        else
            //append the correct morsesign to the output
            morse.append(morseAlphabet.get(input.charAt(i)));

    return morse.toString();
}
publicstringparsecode(映射morseAlphabet,字符串输入){
StringBuilder morse=新的StringBuilder();
//迭代范围内所有字符的索引
对于(int i=0;i
使用for循环迭代字符串中的所有字符。对于从
StringBuilder
String
的转换:返回
StringBuilder
的内容

public String parseCode(Map<Character , String> morseAlphabet , String input){
    StringBuilder morse = new StringBuilder();

    //iterate over the indices of all characters in range
    for(int i = 0 ; i < input.length() ; i++)
        if(morseAlphabet.get(input.charAt(i)) == null)
            //the character has no valid representation in morse-alphabet
            throw new IllegalArgumentException("unknown sign: \\u" + (int) input.charAt(i));
        else
            //append the correct morsesign to the output
            morse.append(morseAlphabet.get(input.charAt(i)));

    return morse.toString();
}
publicstringparsecode(映射morseAlphabet,字符串输入){
StringBuilder morse=新的StringBuilder();
//迭代范围内所有字符的索引
对于(int i=0;i
对于用户给定的字符串,
string
,您需要转换为大写以匹配HashMap中的字符,并遍历字符

for (int i = 0; i < string.length(); i++) {
    String s = charToCode.get(string.charAt(i));
    if (s == null) throw new RuntimeException ("No character found");

    mc.append(s).append(' ');
}
for(int i=0;i

要将StringBuilder,
mc
转换为字符串,请对用户给定的字符串,
String
使用
StringBuilder#toString()

for (int i = 0; i < string.length(); i++) {
    String s = charToCode.get(string.charAt(i));
    if (s == null) throw new RuntimeException ("No character found");

    mc.append(s).append(' ');
}
for(int i=0;i
要将StringBuilder,
mc
转换为字符串,请使用str的
StringBuilder#toString()