optimized updateQuality() on Scala

This commit is contained in:
Nurgaliyeva Daneker 2021-01-26 00:01:55 +06:00
parent de2d37904a
commit af0311e103

View File

@ -4,55 +4,34 @@ class GildedRose(val items: Array[Item]) {
def updateQuality() { def updateQuality() {
for (i <- 0 until items.length) { items.foreach(item => {
if (!items(i).name.equals("Aged Brie") if(item.quality > 0 && item.quality < 50) {
&& !items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) { item.name match {
if (items(i).quality > 0) { case "Aged Brie" => item.quality += 1
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
items(i).quality = items(i).quality - 1
}
}
} else {
if (items(i).quality < 50) {
items(i).quality = items(i).quality + 1
if (items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) { case "Sulfuras, Hand of Ragnaros" => _
if (items(i).sellIn < 11) {
if (items(i).quality < 50) { case "Backstage passes to a TAFKAL80ETC concert" =>
items(i).quality = items(i).quality + 1 if(item.sellIn < 0) item.quality = 0
} else {
item.quality += 1
if(item.sellIn <= 10) item.quality += 1
if(item.sellIn <= 5) item.quality += 1
} }
if (items(i).sellIn < 6) { case "Conjured" =>
if (items(i).quality < 50) { item.quality -= 2
items(i).quality = items(i).quality + 1 if(item.sellIn < 0) item.quality -= 2
}
} case _ =>
} item.quality -= 1
if(item.sellIn < 0) item.quality -= 1
} }
if(item.quality > 50) item.quality = 50
if(item.quality < 0) item.quality = 0
} }
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) { if(!item.name.equals("Sulfuras, Hand of Ragnaros")) item.sellIn -= 1
items(i).sellIn = items(i).sellIn - 1 })
}
if (items(i).sellIn < 0) {
if (!items(i).name.equals("Aged Brie")) {
if (!items(i).name.equals("Backstage passes to a TAFKAL80ETC concert")) {
if (items(i).quality > 0) {
if (!items(i).name.equals("Sulfuras, Hand of Ragnaros")) {
items(i).quality = items(i).quality - 1
}
}
} else {
items(i).quality = items(i).quality - items(i).quality
}
} else {
if (items(i).quality < 50) {
items(i).quality = items(i).quality + 1
}
}
}
}
} }
} }