alex cole
01/06/2021, 4:19 AMclass ArrayND {
var nDimensionalArray: ArrayList<Double> = arrayListOf()
private var shape = arrayOf<Int>()
constructor (ndArray: Array<Double>, shape: Array<Int>){
nDimensionalArray = arrayListOf(*ndArray)
this.shape = shape
}
private fun whatIsTheShape(): Array<Int> {
return shape
}
fun add(b: ArrayND): ArrayND {
if (shape.contentEquals(b.whatIsTheShape())){
val x = arrayListOf<Double>()
for(i in 0 until nDimensionalArray.size){
x.add(nDimensionalArray[i] + b.nDimensionalArray[i])
}
return ArrayND(x.toTypedArray(), shape)
}
else {
return ArrayND(arrayOf<Double>(), arrayOf<Int>())
}
}
operator fun plus(other: ArrayND){
add(other)
}
fun print(){
TODO("Work in more than one dimension")
print("[")
for(i in nDimensionalArray) {
print("$i ")
}
print("]")
}
}
ephemient
01/06/2021, 4:55 AMoperator fun plus
is not returning anythingalex cole
01/06/2021, 5:02 AMChrimaeon
01/06/2021, 9:08 AMVampire
01/06/2021, 12:18 PMoperator fun plus(other: ArrayND) = add(other)
alex cole
01/06/2021, 8:18 PM