class MyArray {
late int length;
late Map<dynamic, dynamic> data;
MyArray(){
this.length = 0;
this.data = {};
}
get(index){
return this.data[index].toString();
}
push(item){
this.data[this.length] = item;
this.length++;
return this.length.toString();
}
pop(){
data.remove(length -1 );
this.length--;
return this.data[length -1];
}
delete(index){
dynamic item = data[index];
for(var i = index; i < length - 1; i++){
data[i] = data[i+1];
}
data.remove(length - 1 );
length--;
return item;
}
// Override toString() to display both length and items
@override
String toString() {
return "Length: $length, Items: ${data}";
}
}
void main(){
MyArray myArray = new MyArray();
myArray.push('hi');
myArray.push('how');
myArray.push('are');
myArray.push('you');
// myArray.pop();
myArray.delete(0);
print(myArray.toString());
}