/*
Sketch: AuCP_Dictionary.ino
Created: 01-Mar-2023
Author: MicroBeaut
GitHub: https://github.com/MicroBeaut/
Youtube: https://www.youtube.com/channel/UCAztmS6ogRMH5spdH0bSmEg
*/
/*
Solution For:
Topics: How to print the content of char array?
Category: Programming Questions
Link: https://forum.arduino.cc/t/how-to-print-the-content-of-char-array/1096158
*/
template <typename T>
class Dictionary {
public:
String key;
T value;
Dictionary() {};
bool valueExists (T var) {
return var == value;
}
bool nameExists (String name) {
return key == name;
}
};
const uint8_t sizeOfArray = 5;
Dictionary<uint8_t> items[sizeOfArray];
void setup() {
Serial.begin(115200);
for (uint8_t index = 0 ; index < sizeOfArray ; index++ ) {
items[index].key = "ITEM-" + String(index + 1);
items[index].value = index * 2;
}
Serial.println("*** Item List ***");
for (uint8_t index = 0 ; index < sizeOfArray; index++) {
Serial.print("Key:=" + String(items[index].key));
Serial.println(", Value:= " + String(items[index].value));
}
String name = "ITEM-" + String(3);
Serial.println("\n*** Name = " + name + " Exist ? ***");
for (uint8_t index = 0 ; index < sizeOfArray; index++) {
if (items[index].nameExists(name)) {
Serial.print("Found Key:= " + name);
Serial.println(", Value:= " + String(items[index].value));
}
}
uint8_t value = 4;
Serial.println("\n*** Value = " + String(value) + " Exist ? ***");
for (uint8_t index = 0 ; index < sizeOfArray; index++) {
if (items[index].valueExists(value)) {
Serial.print("Found Value:= " + String(value));
Serial.println(", Key:= " + items[index].key);
}
}
}
void loop() {
}