PRACTICE CODE import java.util.TimerTask; import org.firmata4j.ssd1306.MonochromeCanvas; import org.firmata4j.ssd1306.SSD1306; public class CountTask extends TimerTask { private int countValue = 10; private final SSD1306 theOledObject; public CountTask(SSD1306 aDisplayObject) { theOledObject = aDisplayObject; } @Override public void run() { for (int j = 0; j <= 3; j++) { theOledObject.getCanvas().clear(); theOledObject.getCanvas().setTextsize(1); theOledObject.getCanvas().drawString(0, 0, "Hello"); theOledObject.display(); try { Thread.sleep(2000); } catch (InterruptedException e) { throw new RuntimeException(e); } theOledObject.clear(); theOledObject.getCanvas().setTextsize(1); theOledObject.getCanvas().drawString(0, 0, "My name is "); theOledObject.display(); try { Thread.sleep(2000); } catch (InterruptedException e) { throw new RuntimeException(e); } while (true) { for (int i = 10; i >= 0; i--) { theOledObject.getCanvas().setTextsize(4); theOledObject.getCanvas().clear(); theOledObject.getCanvas().drawString(55, 20, Integer.toString(i)); theOledObject.display(); try { Thread.sleep(1000); } catch (InterruptedException e) { throw new RuntimeException(e); } } } }}} here is my code and i need help fixing it, the process of 1)hello 2)my name is and 3)the countdown should all repeat three times. steps 1,2,3 are one process and i want the entire process to repeat thrice. I dont understand the issue in my code because the countdown goes on forever. You can use the TimerTask method in java to help the repetition
PRACTICE CODE
import java.util.TimerTask;
import org.firmata4j.ssd1306.MonochromeCanvas;
import org.firmata4j.ssd1306.SSD1306;
public class CountTask extends TimerTask {
private int countValue = 10;
private final SSD1306 theOledObject;
public CountTask(SSD1306 aDisplayObject) {
theOledObject = aDisplayObject;
}
@Override
public void run() {
for (int j = 0; j <= 3; j++) {
theOledObject.getCanvas().clear();
theOledObject.getCanvas().setTextsize(1);
theOledObject.getCanvas().drawString(0, 0, "Hello");
theOledObject.display();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
theOledObject.clear();
theOledObject.getCanvas().setTextsize(1);
theOledObject.getCanvas().drawString(0, 0, "My name is ");
theOledObject.display();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
while (true) {
for (int i = 10; i >= 0; i--) {
theOledObject.getCanvas().setTextsize(4);
theOledObject.getCanvas().clear();
theOledObject.getCanvas().drawString(55, 20, Integer.toString(i));
theOledObject.display();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
}
}}}
here is my code and i need help fixing it, the process of 1)hello 2)my name is and 3)the countdown should all repeat three times. steps 1,2,3 are one process and i want the entire process to repeat thrice. I dont understand the issue in my code because the countdown goes on forever. You can use the TimerTask method in java to help the repetition

Step by step
Solved in 4 steps with 1 images









