簡體   English   中英

我想從文本字段中讀取String句子,並將String中的每個字母與我的列表進行比較

[英]I want to read a String sentence from a Textfield and compare each letter in the String to my list

我想從文本字段中讀取一個字符串句子,並將字符串中的每個字母與我的已制成字符串列表進行比較,如下所示:

A = 123f;
B = 221d;
H = 2333gg;

等等..

我的問題是:我如何閱讀我的消息,因為單個字符串可以說這是消息: "Hello World"

我希望能夠將每個單詞與我制作的字符串進行比較:因此,“ Hello World”將比較第一個字母“ H”,並將其轉換為我定義的“ H”,因此將輸出在JLabel或其他任何形式中,如2333gg

先感謝您!

我認為您需要將字母(A = ...,B = ...,H = ...)存儲到Map ,然后遍歷輸入的字母(可以使用toCharArray()從輸入字符串中toCharArray() ),如果Map包含字母作為鍵,則輸出相應的值。 像這樣:

Map<Character, String> lettersMap = new HashMap<Character, String>();
lettersMap.put(Character.valueOf('A'), "123f");
lettersMap.put(Character.valueOf('B'), "221d");
lettersMap.put(Character.valueOf('H'), "2333gg");

String input = "Hello world";
StringBuffer sb = new StringBuffer();
char[] inputLetters = input.toCharArray();
for (int i = 0; i < inputLetters.length; i++) {
    Character letter = Character.valueOf(inputLetters[i]);
    if (lettersMap.containsKey(letter))
        sb.append(lettersMap.get(letter));
}
System.out.println(sb.toString());

一旦有了一個String (我們將其稱為myString ),就可以像這樣遍歷字母:

for(final char c:new StringIterator(myString)){//對每個字符(c)進行操作}

\n

有幫助嗎?

編輯:抱歉-我使用的是非標准庫中的一段代碼,忘了。

怎么樣:

for (int i = 0; i < myString.length(); i++)
{
    char c = myString.charAt(i);        
    //Process char
}

您可以使用String.toCharArray()獲得一個字符數組,您可以在其中單獨訪問每個字符。

String[] charArray = userInput.toCharArray();
for (int i = 0; i < charArray.length; i++)
{
    ...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM