Les fonctions Java sont déclarées en public et les paramètres sont transmis par valeur, avec une vérification de type forte ; les fonctions Prolog sont déclarées en majuscules et les paramètres sont transmis par valeur et référence à l'aide de variables logiques, sans vérification de type.
La différence entre les fonctions Java et les fonctions Prolog
Java et Prolog sont deux langages de programmation complètement différents, et il existe des différences évidentes dans la façon dont les fonctions sont gérées.
Déclarations
En Java, les fonctions sont généralement déclarées à l'aide du mot-clé public
, suivi du nom de la fonction et d'une liste de paramètres entre parenthèses :
public double calculateArea(double radius) { // 计算圆的面积 }
En Prolog, les fonctions sont appelées prédicats, déclarées en majuscules :
calculateArea(Radius, Area) :- Area = pi * Radius * Radius.
Appels
En Java, une fonction peut être appelée par son nom et ses arguments :
double area = calculateArea(10.0);
En Prolog, les prédicats sont généralement appelés à l'aide d'un point d'interrogation (?) et les arguments sont spécifiés dans l'ordre entre parenthèses :
calculateArea(10.0, Area).
Passage de paramètres
Java utilise des paramètres passés par valeur, ce qui signifie qu'une copie des paramètres est transmise à la fonction. La modification des paramètres au sein d'une fonction n'affecte pas la valeur d'origine.
double radius = 10.0; calculateArea(radius); // radius 仍然为 10.0
Prolog utilise des variables logiques pour le passage des paramètres. Cela signifie que les paramètres peuvent être des entrées, des sorties ou les deux.
calculateArea(Radius, 100.0). Radius = 11.283...
Vérification de type
Java a une vérification de type forte, ce qui signifie que les types de paramètres et les valeurs de retour doivent être spécifiés dans la déclaration de fonction.
public double calculateArea(double radius) { return radius * radius; }
Prolog est un langage sans type, ce qui signifie que les types de paramètres et les valeurs de retour sont déterminés au moment de l'exécution.
Cas pratique
L'exemple suivant utilise Java et Prolog pour calculer l'aire d'un cercle :
Java
public class Circle { public static double calculateArea(double radius) { return Math.PI * radius * radius; } public static void main(String[] args) { double radius = 10.0; double area = calculateArea(radius); System.out.println("Area: " + area); } }
Prolog
calculateArea(Radius, Area) :- Area = pi * Radius * Radius. main :- Radius = 10.0, calculateArea(Radius, Area), format("Area: ~f~n", [Area]).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!