Ich entwickle eine App, in der ich ganzzahlige Werte zu verschiedenen Wortfolgen zuweisen muss. Zum Beispiel möchte ich folgendes zuweisen:Assign Integer Wert zu String
John = 2
Good = 3
Person= 7
Jetzt sind diese John, Good und Person Strings, während 2,3 und 7 int Werte sind. Aber ich bin so verwirrt darüber, wie ich das umsetzen kann. Ich lese viele Dinge darüber, wie man int in string und string in int konvertiert, aber das ist ein anderer Fall.
Ich gebe Option zu Benutzer, um einen Text in editText einzugeben und wenn zum Beispiel Benutzer "Hallo John Sie sind eine gute Person" eingeben, dann wird diese Zeilenausgabe 12 sein, da alle drei Wörter John, Good und Person da sind im Eingabetext. Kannst du mir sagen, wie ich das erreichen kann? ich hier stecken bin, ist mein kleiner Code:
String s = "John";
int s_value= 2;
jetzt ich diese 2 bis John zuweisen möchten, so dass, wenn Benutzereingaben geben und es enthält John dann 2 der Wert für John gezeigt. Bitte um Hilfe, da ich nur ein Anfänger-Programmierer sind
Hier ist mein Code (Edited)
String input = "John good person Man";
Map<String, Integer> map = new HashMap<>();
map.put("John", 2);
map.put("Good", 3);
map.put("Person", 7);
//int number = map.get("Good");
String[] words = input.split(" ");
ArrayList<String> wordsList = new ArrayList<String>();
for(String word : words)
{
wordsList.add(word);
}
for (int ii = 0; ii < wordsList.size(); ii++) {
// get the item as string
for (int j = 0; j < stopwords.length; j++) {
if (wordsList.contains(stopwords[j])) {
wordsList.remove(stopwords[j]);//remove it
}
}
}
for (String str : wordsList) {
Log.e("msg", str + " ");
}
Wie u i Code von Ihnen angewandt sehen und dann will ich meinen Haupt-String aufgeteilt werden, so dass jedes Wort Diese Zeichenfolge wird mit den Zeichenfolgen verglichen, die sich in der Karte <> befinden. Jetzt bin ich verwirrt, was man in der for Schleife schreibt ('stopwords' wird durch welches Ding ersetzt?)
Sie können Klasse –
Best Practice verwenden ist Enum zu verwenden (Aufzählungsdatentyp) –