古いJavaコードをScalaに変換しています。私はこれを持っています。JavaをScalaコードに変換するときの奇妙な動作。関数内に新しいオブジェクトを返す
class XYCustomRenderer(dataMax: Double, dataMin: Double) extends XYShapeRenderer with BaseChart {
override def getItemPaint(series: Int, item: Int): Paint = {
val seriesCollection: TimeSeriesCollection = getPlot.getDataset(OUNCES_CHART).asInstanceOf[ TimeSeriesCollection ]
val ounce = seriesCollection.getYValue(series, item)
if (ounce >= dataMax || ounce <= dataMin) {
new Color(255, 161, 15, 200)
}
new Color(242, 29, 5, 150)
}
}
これはまっすぐな変換です。
色を正しく戻すことに問題があります。
ここに示すように記述すると、常に下の色が返されます。
私はこれを書いたら(返品あり)。
if (ounce >= dataMax || ounce <= dataMin) {
return new Color(255, 161, 15, 200)
}
new Color(242, 29, 5, 150)
いつもifブロックの色を返します。それは私には意味をなさない。スカラーは私が確信していない特定の方法で動作していますか?
私はロジックに基づいて2つの異なる色を返そうとしています。私は間違って何をしていますか?
おかげ
ifステートメントでreturnステートメントで常に色を返す場合、条件は常にtrueです。 –