Faits:
A. A._ est en détention préventive depuis le 8 avril 2008, date à laquelle il a été interpellé au gymnase X._ en possession d'une arme à feu et de munitions. Il est prévenu de mise en danger de la vie d'autrui et d'infraction à la loi fédérale sur les armes.
Il s'était rendu le matin même dans ce gymnase où il étudiait, apportant dans son sac un pistolet, trois chargeurs et environ cinquante cartouches. Il a sorti une première fois son arme alors qu'il était seul en classe avec B._, une gymnasienne dont il était épris. Il lui aurait fait part de son intention de se suicider. Il a alors quitté les lieux pour se rendre dans un garage loué par son père. Surpris par ce dernier, il est retourné au gymnase, avec son arme et ses munitions. Il aurait d'abord voulu s'enfermer dans une salle de classe avec B._ et l'infirmière du gymnase. Alors qu'il discutait avec le doyen de l'école, il aurait remarqué la présence de la police et aurait sortit son arme et fait un mouvement de rotation avec celle-ci, avant d'être immédiatement maîtrisé par les agents. Le prévenu a toujours affirmé qu'il n'avait pas voulu faire de mal à qui que ce soit, mais qu'il avait uniquement l'intention de mettre fin à ses jours.
Le 21 avril 2008, le juge d'instruction a ordonné une expertise psychiatrique de A._, demandant à l'expert désigné de se prononcer sur l'existence d'un trouble mental, la responsabilité, le risque de récidive et les mesures et traitements à entreprendre.
B. Le 13 mai 2008, A._ a présenté une demande de mise en liberté provisoire, à l'appui de laquelle il a déposé un courrier du 7 mai 2008 du Centre de Psychiatrie du Nord Vaudois. Aux termes de ce courrier, l'hôpital en question est ouvert à tout patient présentant des critères de soins aigus, mais il n'était pas possible de se prononcer sur le cas de A._, en l'absence d'une évaluation par le service de psychiatrie pénitentiaire ou par un expert psychiatre. Le Juge d'instruction de l'arrondissement de Lausanne (ci-après: le juge d'instruction) a rejeté la requête par ordonnance du 15 mai 2008, au motif que l'intéressé présentait un danger pour la sécurité ou l'ordre publics et parce qu'il n'y aurait pas d'encadrement médical mis en place à sa libération.
Par arrêt du 2 juin 2008, le Tribunal d'accusation du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal) a rejeté le recours que A._ avait formé contre cette ordonnance. Il a considéré qu'il existait des "présomptions suffisantes de culpabilité" au sens de l'art. 59 al. 1 du code de procédure pénale vaudois (CPP/VD). Le maintien en détention était motivé par un risque de récidive, résultant de l'état psychique du prévenu; il convenait donc d'attendre les conclusions, à tout le moins verbales, de l'expert psychiatre. Le Tribunal cantonal relevait également que la présente affaire avait été médiatisée et avait "suscité un grand émoi dans la population", de sorte qu'une mise en liberté pourrait être considérée comme choquante et porter ainsi atteinte à l'ordre public au sens de l'art. 59 al. 1 ch. 1 CPP/VD. Enfin, le principe de proportionnalité était respecté.
C. Agissant par la voie du recours en matière pénale, par acte du 16 juin 2008, A._ demande au Tribunal fédéral de réformer cet arrêt en ce sens que sa mise en liberté immédiate soit ordonnée, subsidiairement d'annuler l'arrêt attaqué et de renvoyer la cause à l'autorité inférieure. Il conteste l'existence de présomptions suffisantes de culpabilité, d'un risque de récidive et d'une atteinte à l'ordre public. Il se plaint également d'une violation du principe de célérité. Le Procureur général du canton de Vaud s'est déterminé; il conclut au rejet du recours. Le Tribunal cantonal se réfère aux considérants de son arrêt. Ces écritures ont été communiquées au recourant, qui a présenté des observations complémentaires le 3 juillet 2008.
Considérant en droit:
1. Les décisions relatives au maintien en détention préventive sont des décisions en matière pénale au sens de l'art. 78 al. 1 LTF (cf. ATF 133 I 270 consid. 1.1 p. 273; Message concernant la révision totale de l'organisation judiciaire fédérale du 28 février 2001, FF 2001 p. 4111). Formé en temps utile (art. 100 al. 1 LTF) contre une décision prise en dernière instance cantonale (art. 80 LTF) et qui touche le recourant dans ses intérêts juridiquement protégés (art. 81 al. 1 let. a et b ch. 1 LTF), le recours est recevable.
2. Une mesure de détention préventive n'est compatible avec la liberté personnelle, garantie par les art. 10 al. 2 Cst. et 5 CEDH, que si elle repose sur une base légale (art. 31 al. 1 et 36 al. 1 Cst.), soit en l'espèce l'art. 59 CPP/VD. Elle doit en outre correspondre à un intérêt public et respecter le principe de la proportionnalité (art. 36 al. 2 et 3 Cst.; ATF 123 I 268 consid. 2c p. 270). Pour que tel soit le cas, la privation de liberté doit être justifiée par un danger pour la sécurité ou l'ordre public, par un risque de fuite ou par les besoins de l'instruction (cf. art. 59 ch. 1 à 3 CPP/VD). La gravité de l'infraction - et l'importance de la peine encourue - n'est, à elle seule, pas suffisante (ATF 125 I 60 consid. 3a p. 62; 117 Ia 70 consid. 4a). Préalablement à ces conditions, il doit exister à l'égard de l'intéressé des charges suffisantes, soit de sérieux soupçons de culpabilité (art. 5 par. 1 let. c CEDH; ATF 116 Ia 144 consid. 3; art. 59 in initio CPP/VD). S'agissant d'une restriction grave à la liberté personnelle, le Tribunal fédéral examine librement ces questions, sous réserve toutefois de l'appréciation des preuves, revue sous l'angle restreint de l'arbitraire (ATF 123 I 268 consid. 2d p. 271). L'autorité cantonale dispose ainsi d'une grande liberté dans l'appréciation des faits (ATF 114 Ia 283 consid. 3; 112 Ia 162 consid. 3b).
3. Le recourant conteste d'abord l'existence de soupçons suffisants de culpabilité.
3.1 Pour qu'une personne soit placée en détention préventive, il doit exister à son égard des charges suffisantes ou des indices sérieux de culpabilité, c'est-à-dire des raisons plausibles de la soupçonner d'avoir commis une infraction. Il n'appartient cependant pas au juge de la détention de procéder à une pesée complète des éléments à charge et à décharge et d'apprécier la crédibilité des personnes qui mettent en cause le prévenu. Il doit uniquement examiner s'il existe des indices sérieux de culpabilité justifiant une telle mesure. L'intensité des charges propres à motiver un maintien en détention préventive n'est pas la même aux divers stades de l'instruction pénale; si des soupçons, même encore peu précis, peuvent être suffisants dans les premiers temps de l'enquête, la perspective d'une condamnation doit apparaître vraisemblable après l'accomplissement des actes d'instruction envisageables (ATF 116 Ia 143 consid. 3c p. 146; Gérard Piquerez, Traité de procédure pénale suisse, 2e éd., Genève, Zurich et Bâle 2006, p. 540 et les références).
3.2 En l'occurrence, le recourant est prévenu de mise en danger de la vie d'autrui et d'infraction à la loi fédérale sur les armes. L'arrêt attaqué retient que l'enquête est également instruite pour actes préparatoires à assassinat, reprenant ainsi les termes des ordonnances du juge d'instruction des 21 avril et 15 mai 2008. On ignore cependant sur quels éléments se fonde cette prévention et les seules infractions dont le prévenu a été inculpé sont la mise en danger de la vie d'autrui et l'infraction à la loi fédérale sur les armes. Il n'y a cependant pas lieu d'examiner plus avant cette question, dès lors que les soupçons de commission de ces deux dernières infractions sont suffisants. En effet, le recourant ne conteste pas s'être rendu dans son gymnase avec une arme et des munitions et avoir sorti son arme à deux reprises au moins, à savoir lorsqu'il se trouvait seul en classe avec B._ et au moment de son interpellation par la police. Selon ses propres déclarations, du moins dans un premier temps, l'arme était chargée lorsqu'il se trouvait avec la prénommée. De plus, il a admis avoir sorti son arme lorsqu'il a remarqué la présence des agents dans le hall de l'établissement et a déclaré qu'il avait alors tenté de se tirer une balle dans le ventre.
Sur la base de ces éléments, on peut constater qu'il existe des soupçons de la commission de l'infraction à la loi fédérale sur les armes et de mise en danger de la vie d'autrui au sens de l'art. 129 CP. La question de savoir si tous les éléments constitutifs de cette dernière infraction - en particulier l'absence de scrupules et le danger de mort imminent - sont réalisés relève de l'appréciation du juge du fond. En l'état, les indices de culpabilité peuvent donc être qualifiés de sérieux, si bien que la condition préalable du maintien en détention préventive est réalisée.
4. Le recourant conteste également l'existence d'un risque de récidive, en se prévalant du fait qu'il n'a aucun antécédent.
4.1 Selon la jurisprudence, le maintien en détention se justifie s'il y a lieu de présumer, avec une certaine vraisemblance, qu'il existe un danger de récidive. Il convient de faire preuve de retenue dans l'appréciation d'un tel risque: le maintien en détention ne peut se justifier pour ce motif que si le pronostic est très défavorable et que les délits dont l'autorité redoute la réitération sont graves (ATF 133 I 270 consid. 2.2 p. 276; 125 I 60 consid. 3a p. 62, 361 consid. 5 p. 367; 124 I 208 consid. 5 p. 213; 123 I 268 consid. 2c p. 270 et les arrêts cités). La jurisprudence se montre toutefois moins stricte dans l'exigence de vraisemblance lorsqu'il s'agit de délits de violence graves ou de délits sexuels, car le risque à faire courir aux victimes potentielles est alors considéré comme trop important; en pareil cas, il convient de tenir compte de l'état psychique du prévenu, de son imprévisibilité ou de son agressivité (ATF 123 I 268 consid. 2e p. 271). Autant que possible, l'autorité doit tenter de substituer à la détention toute autre mesure moins incisive propre à atteindre le même résultat (ATF 123 I 268 consid. 2c et e p. 270 s. et les arrêts cités).
4.2 En l'espèce, les actes reprochés au recourant sont objectivement graves, s'agissant de mise en danger de la vie d'autrui. S'il est vrai que le recourant n'a pas d'antécédents pénaux, les faits qui ont motivé son arrestation sont à prendre très au sérieux et justifient de faire preuve de prudence dans l'appréciation du risque de récidive. En effet, le fait qu'il se soit rendu dans son gymnase avec une arme chargée et une cinquantaine de cartouches est en soi particulièrement inquiétant pour la sécurité d'autrui et suscite des craintes quant à son état mental. Le recourant a d'ailleurs été hospitalisé au début de l'année au Centre psychiatrique du Nord vaudois à la suite de plusieurs tentatives de suicide. Dans ces circonstances, on peut légitimement craindre que l'intéressé ne souffre de problèmes d'ordre psychique et qu'un traitement soit nécessaire pour éviter une récidive. De plus, bien que l'intéressé ait toujours affirmé qu'il ne voulait s'en prendre qu'à lui-même, le déroulement des événements du 8 avril 2008 ne permet pas d'exclure que ses actes de désespoir puissent avoir des conséquences graves également pour des tiers. En l'état, le risque de voir le recourant répéter des actes dangereux non seulement pour lui-même mais également pour autrui apparaît trop important pour que l'on puisse envisager une libération provisoire sans attendre les conclusions de l'expertise psychiatrique. Le risque de récidive justifie donc encore le maintien en détention préventive.
4.3 Cela étant, on ne saurait soumettre totalement la mise en liberté du prévenu aux contingences liées à l'administration d'une expertise psychiatrique, qui semble en l'occurrence avoir pris du retard. Il appartient donc au juge de la détention d'interpeller l'expert-psychiatre pour qu'il se prononce dans les meilleurs délais, le cas échéant en rendant des conclusions provisoires.
5. Le maintien en détention étant justifié par le risque de récidive, il n'est pas nécessaire d'examiner s'il se justifie également pour d'autres motifs liés à l'ordre public, comme l'a retenu l'autorité attaquée. Il convient cependant de relever que, conformément à la jurisprudence du Tribunal fédéral et de la Cour européenne des droits de l'homme, l'hypothèse d'une atteinte à l'ordre public en raison d'un scandale dans l'opinion publique provoqué par la libération du prévenu ne peut être envisagée que dans des situations exceptionnelles et avec la plus grande retenue (arrêt non publié 1P.307/2000 du 13 juin 2000, consid. 2a; arrêts CourEDH Letellier c. France du 26 juin 1991, Série A, vol. 207, par. 47 ss et I.A. c. France du 23 septembre 1998, Recueil CourEDH 1998-VII p. 2591, par. 104).
6. Enfin, le recourant se plaint d'une violation du principe de célérité.
6.1 L'incarcération peut être disproportionnée en cas de retard injustifié dans le cours de la procédure pénale (ATF 128 I 149 consid. 2.2.1 p. 151 s.; 123 I 268 consid. 3a p. 273; 116 Ia 147 consid. 5a, 107 Ia 257 consid. 2 et 3). Il doit toutefois s'agir d'un manquement particulièrement grave, faisant au surplus apparaître que l'autorité de poursuite n'est plus en mesure de conduire la procédure à chef dans un délai raisonnable (ATF 128 I 149 consid. 2.2.1 p. 151 s.). Le caractère raisonnable de la durée d'une procédure pénale s'apprécie selon les circonstances particulières de la cause, eu égard en particulier à la complexité de l'affaire, au comportement du requérant et à celui des autorités compétentes, ainsi qu'à l'enjeu du litige pour l'intéressé (ATF 133 I 270 consid. 3.4.2 p. 281 et les arrêts cités).
6.2 En l'espèce, le recourant n'invoque pas de manquements dans la conduite de la procédure pénale en tant que telle, mais il affirme que le dépôt du rapport d'expertise psychiatrique ne pourrait pas intervenir avant six mois. Il fonde cette estimation sur le fait qu'un premier entretien a eu lieu un mois après la désignation de l'expert et que celui-ci aurait déclaré que trois à six entretiens seraient nécessaires. Pour autant qu'ils soient vérifiés, ces éléments ne suffiraient cependant pas à admettre une violation du principe de célérité. En effet, s'il est vrai qu'il serait regrettable que le premier entretien ait eu lieu un mois après la désignation de l'expert, on peut raisonnablement penser que l'expertise ne se poursuivra pas à ce rythme. Le fait que le prévenu se trouve en détention devra amener l'expert mandaté à faire preuve de diligence et, comme relevé ci-dessus (cf. supra consid. 4.3), le juge de la détention est invité à l'interpeller pour qu'il rende ses conclusions dans les meilleurs délais. En l'état, il n'y a donc pas de violation du principe de célérité.
7. Il s'ensuit que le recours doit être rejeté. Le recourant, qui succombe, doit supporter les frais de la présente procédure (art. 66 al. 1 LTF).
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Les frais judiciaires, arrêtés à 1000 fr., sont mis à la charge du recourant.
3. Le présent arrêt est communiqué au mandataire du recourant, au Procureur général et au Tribunal d'accusation du Tribunal cantonal du canton de Vaud.
Lausanne, le 9 juillet 2008
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Juge présidant: Le Greffier:
Aemisegger Rittener