Sachverhalt: Sachverhalt: A. Der algerische Staatsangehörige X._ steht unter dem dringenden Verdacht, am 21. Januar 2004 im Hauptbahnhof Zürich verschiedene Diebstähle begangen bzw. dies versucht zu haben. Zunächst habe er jemandem den Rucksack entwendet. Dann habe er versucht, einer Frau die Umhängetasche wegzunehmen. Die Frau habe dies jedoch bemerkt und ihm die Tasche sogleich wieder abgenommen. Anschliessend habe er einer weiteren Frau die Umhängetasche entwendet. Dabei sei er beobachtet worden. In der Folge habe er festgenommen werden können. Bei den danach am Wohnort von X._ durchgeführten Hausdurchsuchungen konnten verschiedene Gegenstände, insbesondere Kleider, sichergestellt werden, die auf deliktische Herkunft schliessen lassen. Mit Verfügung vom 23. Januar 2004 versetzte der Haftrichter am Bezirksgericht Zürich X._ in Untersuchungshaft. Am 18. Februar 2004 ersuchte X._ um Haftentlassung. Am 25. Februar 2004 wies der Haftrichter das Gesuch ab. Am 25. Februar 2004 wies der Haftrichter das Gesuch ab. B. X._ führt staatsrechtliche Beschwerde mit dem Antrag, den Entscheid des Haftrichters vom 25. Februar 2004 aufzuheben; er sei aus der Haft zu entlassen. B. X._ führt staatsrechtliche Beschwerde mit dem Antrag, den Entscheid des Haftrichters vom 25. Februar 2004 aufzuheben; er sei aus der Haft zu entlassen. C. Der Haftrichter hat auf Gegenbemerkungen verzichtet. Die Bezirksanwaltschaft hat sich vernehmen lassen mit dem Antrag, die Beschwerde abzuweisen. Die Bezirksanwaltschaft hat sich vernehmen lassen mit dem Antrag, die Beschwerde abzuweisen. D. Der Beschwerdeführer hat eine Replik eingereicht. Er beantragt damit erneut, den Entscheid des Haftrichters vom 25. Februar 2004 aufzuheben. Überdies beantragt er, den inzwischen ergangenen Entscheid des Haftrichters vom 21. April 2004 ebenfalls aufzuheben. 