5
मैं इन दो साधारण अंतराल कक्षाओं के बॉयलर-प्लेट-उन्मूलन सुपरक्लास को कैसे परिभाषित करूं?स्कैला रियल इंटरवल, इंट इंटरवल
class IntInterval(val from: Int, val to: Int) {
def mid: Double = (from+to)/2.0
def union(other: IntInterval) = IntInterval(from min other.from, to max other.to)
}
class DoubleInterval(val from: Double, val to: Double) {
def mid: Double = (from+to)/2.0
def union(other: DoubleInterval) = DoubleInterval(from min other.from, to max other.to)
}
मैं
class Interval[T <: Number[T]] (val from: T, val to: T) {
def mid: Double = (from.doubleValue+to.doubleValue)/2.0
def union(other: IntInterval) = Interval(from min other.from, to max other.to)
}
की कोशिश की लेकिन मिनट और अधिकतमसंघ विधि में संकलन नहीं था (के बाद से संख्या [टी] न्यूनतम/अधिकतम नहीं है)।
आप एक सुंदर सुपर क्लास जिसमें दोनों मध्य और संघ के साथ तरीकों सौदों प्रदान कर सकते हैं एक साफ, कोड-बार और केवल एक बार बॉयलरप्लेट-परहेज तरीका है?
Mhhh। बस इसे 2.9.2 में सत्यापित किया और मुझे इसके साथ कोई समस्या नहीं थी। आपका त्रुटि संदेश क्या है? (क्या आप 'आयात संख्या ...' भूल गए थे?) – soc
धन्यवाद बहुत बहुत धन्यवाद! यह पूरी तरह से काम किया। –