检查String []中的String是否在ArrayList <string>中

苹果浏览器 :

我刚刚构建了一个广播接收器,通过它可以接收传入的文本消息,而不是在有空间时将文本消息拆分并将其保存到中String[]

现在,我需要检查String[]数据库中是否有此内容。为此,我创建了一个ArrayList<String>,它从对应的列中获取所有条目。现在,我需要从短信中检查字符串中的String ArrayList是否相同String[],但是我不知道该如何实现。

是否有一种简便快捷的检查方法,我还需要知道两者中都包含哪个String吗?

SmileySmsReceiver:

  package de.retowaelchli.filterit.services;


    import java.util.ArrayList;

    import de.retowaelchli.filterit.database.SFilterDBAdapter;
    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    import android.database.Cursor;
    import android.os.Bundle;
    import android.telephony.SmsMessage;
    import android.util.Log;
    import android.widget.Toast;



    public class SmileySmsReceiver extends BroadcastReceiver {

        @Override
        public void onReceive(Context context, Intent intent) 
        {
            //Datenbank definieren
            SFilterDBAdapter mDbHelper = new SFilterDBAdapter(context);


            //---get the SMS message passed in---
            Log.d("SmileySmsReceiver", "Yes it calls the onReceive");
            Bundle bundle = intent.getExtras();        
            SmsMessage[] msgs = null;
            String str = "";            
            if (bundle != null)
            {
                Log.d("SmileySmsReceiver", "Bundle is not null");
                //---retrieve the SMS message received---
                Object[] pdus = (Object[]) bundle.get("pdus");
                msgs = new SmsMessage[pdus.length];            
                for (int i=0; i<msgs.length; i++){
                    msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);                
                    str += "SMS from " + msgs[i].getOriginatingAddress();                     
                    str += " :";
                    str += msgs[i].getMessageBody().toString();
                    str += "\n";        
                Log.d("SmileySmsReceiver","Was steht in der Nachricht?: " + str);

                String[] splited = str.split("\\s+");

                //Hier werden die Strings der Smileys aus der Datenbank gezogen
                mDbHelper.open();
                Cursor c = mDbHelper.getAllSFilter();

                ArrayList<String> SmileyList = new ArrayList<String>();
                c.getColumnIndex(SFilterDBAdapter.KEYWORD);
                int ColumnIndex = c.getColumnIndex(SFilterDBAdapter.KEYWORD);
                    if(c!=null)
                        {
                        //Hier werden die Smileys in die ArrayList geschrieben
                        while(c.moveToNext()){
                            String infoItem = c.getString( ColumnIndex );
                            SmileyList.add(infoItem);
                        }
<------------------------- FROM HERE ON I NEED YOUR GUYS HELP ------------------------------->
                }
                }
                //---display the new SMS message---
                Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
            }                         
        }
    }
卡巴斯基

如果有String myStringArrayList<String> myListOfStrings,则可以检查是否myString在列表中,如下所示:

myListOfStrings.contains( myString );

这将返回一个布尔值(true / false)-如果找到了字符串则为true,否则为false。

在您的情况下,您需要遍历字符串数组,并将每个字符串匹配SmileyList如下:

for( String s : splitted ) {
   if( SmileyList.contains( s ) ) {
     //Do what you need to do if the string is in the SmileyList.
   }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查List <Map <String,String >>中是否存在String

如何检查TreeMap <String,ArrayList <String >>是否包含值?在Java中

如何检查界面是否为golang中的map [string] string

ArrayList <Class>中的String []

如何检查ArrayList <ArrayList <String >>是否包含某个ArrayList <String>

检查TreeSet中的键是否以String开头,并获取该键

检查链表中每个节点的值是否等于String

检查String是否在特定Firestore文档的数组中(Swift)

如何检查Map中的键是否以给定的String值开头

如何在Swift 5中检查String是否以字母开头?

如何检查String是否在Python中具有相同的字符

如何在C中检查String是否为空

检查String.Contain是否包含列表中的元素

检查 Dictionary<string ,complexObject> 中是否已经存在对象

检查 List<String> 中的项目是否与对象列表中的 String 属性匹配

List <string>在C#中检查null

无法检查lldb中的std :: string变量

如何检查 String[Java] 中的特殊字符?

如何检查和删除字符串变量是否在 Dictionary<string, string> 中?

RavenDb:检查List <string>是否在另一个List <string>中包含Any

如何检查string2是否有string1中没有的字符?

检查字典<string,List <string >>中是否已经存在值

如何检查Dictionary <string,Dictionary <string,Dictionary <string,string >>>中的containsKey

Redshift/SQL:检查 string2 中是否存在 string1 中的多少个单词

Java 中的 ArrayList<String>,[€14,€55,€500]

如何在Arraylist中声明String []?

ArrayList <String []>中的字符串

如何从ArrayList <String>中删除括号

我如何从Arraylist <String>中获取项目?