遍历 Java 中的数组并比较两个结果



给定和字符串数组,例如:

userMail usermail = new userMail();
List<String> data = new ArrayList<String>();

其中对象用户邮件的定义如下:

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class userMail {
    public userMail(){
    }
    public List<String> email = new ArrayList<String>();
    public List<String> getEmail() {
        return email;
    }
    public void setEmail(List<String> email) {
        this.email = email;
    }

所以这就是我迷路的地方:给定来自客户端的电子邮件地址,遍历数组并找到它。如果存在,则返回与此电子邮件地址关联的一些数据,并使用 REST 将其回发到客户端。

即使是一个高级概念也将不胜感激。谢谢

最好使用HashMap或任何Map结构,这将清除设置搜索算法的匆忙。

例如

public static void main(String[] args)
{
    HashMap<String,String> xdr = new HashMap<String, String>();
    xdr.put("bdx@atr.com", "Border line Statement");
    System.out.println(xdr.get("pdf"));//output returned is null
            String valx = xdr.get("bdx@atr.com");
    String valy = xdr.get("pdf");
    if(valy == null)
        System.out.println("This is null value" + valy);
    if(valx == null)
        System.out.println(valx);
}

如果未找到键,则返回 null。您可以对照 null 检查返回的值以继续操作。

然后返回与此电子邮件地址关联的一些数据

您甚至可以将要返回的此数据存储为键的 HashMap 中的值存储。

试试这个:

public email checkForEmail(testEmail)
{
    for(int x = 0; x < emailList.length-1; emailList--) //searches through list of emails
    {
        if(emailList[x].equals(testEmail)) //if current index position equals email you search for
            return emailList[x]; //return that email
    }
    return null; //returns null if the email address wasn't contained
}

您可以编辑 if 语句以比较您选择的电子邮件的任何变量。

最新更新