Visualizzazione dei risultati da 1 a 5 su 5

Discussione: parole chiave

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    3

    parole chiave

    Ciao a tutti!
    qualcuno sa se esiste un qualche metodo per verificare se una stringa corrisponde a una delle parole chiave di Java?

    Grazie

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    No, ma è facilmente costruibile, essendo che le parole chiave sono un insieme finito.


    codice:
    import java.util.*;
    
    public class TestKeyword {
       private static String[] keywords = {
          "assert", "abstract", "boolean", "break", "byte",
          "case", "catch", "char", "class","const", "continue",
          "default", "do", "double", "else", "extends", "final",
          "finally", "float", "for", "goto", "if", "implements",
          "import", "instanceof", "int", "interface", "long",
          "native", "new", "package", "private", "protected",
          "public", "return", "short", "static", "super",
          "switch", "synchronized", "this", "throw", "throws",
          "transient", "try", "void", "volatile", "while"};  
    
       public static void main(String[] args) {
          System.out.println("La parola " +
             ((Arrays.binarySearch(keywords, args[0]) >= 0) ? "è" : "non è") +
             " una keyword");
       }
    }

    Verifica se la parola passata come primo argomento è una keyword Java oppure no.

    Resta da capire l'utilità di una cosa del genere, se non per scopi molto molto specialistici.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    3
    No no infatti, mi chiedevo soltanto se esistesse un metodo diverso da questo

    Grazie mille!!!

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    A partire da Java 6 esiste nel framework standard la enum javax.lang.model.SourceVersion che ha il metodo statico isKeyword.

    codice:
    boolean parolaChiave = SourceVersion.isKeyword("extends");

    Il vantaggio di questo metodo è che, essendo nel framework, è sicuramente tenuto aggiornato se in futuro dovessero aggiungere nuove keyword.

    Nota: questo isKeyword indica come parole chiave anche i valori letterali false, true e null che effettivamente sono comunque "riservati" (non possono essere usati come identificatori).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    3
    Grazie

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.