2017-09-17 5 views
0

J'écris ces algorithmes pour un programme de correction de style qui fait des ajustements à un fichier source java, qui peut compiler sans erreur. Il est actuellement configuré pour lire le fichier ligne par ligne.Java: Style-Correcting Code: trouver un commentaire

En ce moment, je vais avoir du mal à écrire 2 méthodes/algorithmes qui

  1. Déterminer si la ligne courante (chaîne) a des commentaires et
  2. trouve où le commentaire commence

J'ai actuellement:

public static int FindComment (String TextLine) { 
       int EndOfCode = TextLine.lastIndexOf("; "); 
       return TextLine.indexOf("//", EndOfCode); 

      } 

     public static boolean HasComment (String TextLine) { 
      if (TextLine.contains("//")) 
      { 
       return true; 
      } 

      else 
      { 
       return false; 
      } 
     } 

Je sais que c'est incorrect parce que je peux avoir du code, et commentaires, qui contiennent "; //; // », ainsi que des commentaires. J'ai essayé d'autres déclarations conditionnelles sans succès.

+0

Qu'est-ce que à propos du commentaire multiligne? - Vous devriez commencer à penser à obtenir un lexer Java – laune

Répondre

-1

Bonjour vous n'explique pas quel problème avez-vous, mais je pense que vous devriez échapper aux caractères backslash lorsque vous travaillez avec la fonction indexOf.

+0

Où se trouvent les barres obliques inverses dans ce code? – laune