在Scala中查找列表列表中的元素

时间:2013-11-09 12:22:33

标签: algorithm scala functional-programming

我试图在列表列表中找到一个元素;特别是,如果在一个国家可以找到特定的城市。

我有州:List[State]和城市:List[City],表示国家/地区代表List[List[City]]

我写了这段代码,但似乎我遇到了一个问题。这是片段:

case class city (
  name: String, 
  CodePostal: Double, 
  visit: Boolean
)


def belongToCountry(p: city): Boolean =
  countries.flatten.foreach {
    case p => return true 
    case _ => return false
  }

def belongToCountry(p: city): Boolean =
  countries.foreach(s => s.city.contains(p))

2 个答案:

答案 0 :(得分:0)

您应该使用contains代替foreach

def belongToCountry(p: city): Boolean =
  countries.exists(s => s.contains(p))

我的想法是:city属于countries的集合,如果countries contains country的集合containscity city }。

或者,您可以从国家/地区集合中获取所有城市,然后检查结果是否包含此def belongToCountry(p: city): Boolean = countries.view.flatten.exists{_ == p}

{{1}}

答案 1 :(得分:0)

使用Dropzone.options.seferekle = { paramName: "file", parallelUploads : 1, acceptedFiles: '.jpg,.jpeg,.JPEG,.JPG,.png,.PNG', autoProcessQueue : false, addRemoveLinks : true, init: function() { myDropzone = this; $('.post').on('click', function(event){ tarih = $("input[name=tarih]").val(); if(!tarih) { alert("Sefer Tarihi ve Sefer Türü Alanları Boş Bırakılamaz."); } else { myDropzone.processQueue(); myDropzone.on("success", function(file, responseText) { newImgName= responseText; $.ajax({ url: "http://localhost/vipumre/App/Model/add.php", data: "image_name="+newImgName+"&tarih="+tarih, type: "post", success: function(data) { $('.return').show(); $('.return').text(data); }, error: function() { $('.return').show(); $('.return').text("Ajax Error"); } }); //Ajax End myDropzone.on("complete", function(file,done) { this.removeAllFiles(true); done(); }) }); } }); } //Dropzone init End }; //Dropzone End 表达式的更详细的解决方案将是

for