Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.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 如何知道给定字符串的一部分是否是Arraylist中的字符串<;字符串>;?_Java_String_Arraylist - Fatal编程技术网

Java 如何知道给定字符串的一部分是否是Arraylist中的字符串<;字符串>;?

Java 如何知道给定字符串的一部分是否是Arraylist中的字符串<;字符串>;?,java,string,arraylist,Java,String,Arraylist,我正在做一个家庭作业,我很难找出如何判断给定字符串的一部分是否是字符串的Arraylist中的字符串 给定字符串的示例: loveaspd asdhouseaspd 字符串列表:爱,房子,家,狗,娱乐,问题 我尝试过使用contains,但刚意识到一旦我必须检查每封信,它就帮不了我了 示例:loveaspr 我的程序应该检查单词love,这样它就会看到第一个字母是否匹配,然后转到第二个字母。因此,在阅读单词love后,输出将是: love exists. 程序将检查字母a。我的数组列表中有一

我正在做一个家庭作业,我很难找出如何判断给定字符串的一部分是否是字符串的
Arraylist
中的字符串

给定字符串的示例:

loveaspd
asdhouseaspd
字符串列表:爱,房子,家,狗,娱乐,问题

我尝试过使用contains,但刚意识到一旦我必须检查每封信,它就帮不了我了

示例:
loveaspr

我的程序应该检查单词
love
,这样它就会看到第一个字母是否匹配,然后转到第二个字母。因此,在阅读单词
love
后,输出将是:

love exists.
程序将检查字母
a
。我的数组列表中有一个字母
a
的单词,因此它将检查第二个字母,并将看到在第一个字母是
a
而第二个字母是
s
的地方没有这样的单词。然后,
a
将被拒绝,
s
将被拒绝

将检查字符串的最后一部分(请注意,我的arrayList中有单词问题,因此程序将检查第一个字母和第二个字母,然后两者一起被拒绝)

因此,我的输出应该是:

love exists.
a rejected.
s rejected.
pr rejected.
问题是我不知道如何检查ArrayList中每个单词的每个字母。我不是要别人帮我写作业。我想找一个人,他可以说我应该学习(特别是)哪个主题,或者举一个与我的问题相关的例子,以便完成任务(明天到期)

提前感谢,

伊恩·皮埃尔。

继续这样下去

ArrayList<String> ar = new ArrayList<String>();
        for (String a : ar) {
            if (a.contentEquals("any_string_here") || a.equalsIgnoreCase("any_string_here")) {
                System.out.println("Found");
            }
        }
ArrayList ar=new ArrayList();
for(字符串a:ar){
if(a.contentEquals(“此处任意字符串”)| | a.equalsIgnoreCase(“此处任意字符串”)){
System.out.println(“找到”);
}
}

一个选项是迭代列表,并使用
String.indexOf()
确定部分匹配。以下是一个例子:

  private static String match(List<String> mots, String searchPhrase) {
        for(String mot : mots) {
            if(searchPhrase.indexOf(mot) >= 0) {
                return mot;
            }
        }
        return "No Match Found.";
    }

    //Test
    public static void main(String[] args) {
        List<String> mots = new ArrayList<>();
        mots.add("un");
        mots.add("deux");
        mots.add("trois");
        String searchPhrase = "lesdeuxchats";
        System.out.println( match(mots,searchPhrase) );  //Output = "deux"
    } 
私有静态字符串匹配(列出MOT、字符串搜索短语){
用于(字符串mot:mot){
if(searchPhrase.indexOf(mot)>=0){
返回mot;
}
}
返回“未找到匹配项。”;
}
//试验
公共静态void main(字符串[]args){
List mots=new ArrayList();
mots.添加(“un”);
mots.添加(“双份”);
mots.添加(“trois”);
字符串searchPhrase=“lesdeuxchats”;
System.out.println(匹配(mots,searchPhrase));//Output=“deux”
} 
字符串s;
ArrayList=新建ArrayList();
int i,j;
对于(i=0;i
public类SO{
公共静态void main(字符串[]args){
ArrayList al=新的ArrayList();
新增(“ABC”);
添加(“定义”);
al.添加(“GHI”);
新增(“JKL”);
al.添加(“MNO”);
用于(字符串列表:al){
如果(arrList==“GHI”){
System.out.println(“找到”);
}
}
}       
}

到目前为止,您尝试了什么?您的困境在哪里?您不能期望社区为您解决问题。问题是我真的不知道从哪里开始。我尝试使用string.contains,但它对我没有帮助,因为我必须逐个字母检查。使用if list.contains(“单词”)将返回true或false,谢谢你的帮助,但我认为这对我没有帮助。我刚刚编辑了我的问题。请你再读一遍好吗?@IanPierre你能给出一个正确输入和预期输出的示例吗…?我的字典,例如:house,love,home,problem,amuse。给定输入:loveprhomedc预期输出:爱存在,pr不存在,家存在,d不存在,c不存在。(注意,程序应该搜索第一个字母的单词,然后是第二个字母,就像我要说的真实字典一样)@IanPierre抱歉,但没有得到那个。请解释一个小错误。对不起,我错按了enter键。indexOf()方法检查每个字母?它检查每个字母,直到找到它要查找的字符串,或者直到到达字符序列的结尾。下面是它的Javadoc:
String s;
ArrayList<String> list= new ArrayList<String>();
int i,j;

for(i=0;i<s.length;i++)
{
    for(j=i+1;j<s.length;j++){
        if(list.contains(s.substring(i,j)){
            System.out.println("The list contains "+s.substring(i,j));
        }
    }
}
public class SO {       
    public static void main(String[] args) {
        ArrayList<String> al = new ArrayList<String>();
        al.add("ABC");
        al.add("DEF");
        al.add("GHI");
        al.add("JKL");
        al.add("MNO");

        for (String arrList : al) {
            if(arrList == "GHI"){
                System.out.println("Found");
            }
        }
        }       
    }