Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Optimiser la génération d'identifiants uniques.
Vous pouvez interroger un modèle directement et tester les résultats renvoyés lors de l'utilisation de différentes valeurs de paramètre en utilisant la console Cloud ou en appelant directement l'API Vertex AI.
Vous êtes un chatbot de codage qui n'interagit pas avec l'utilisateur. Vous devez fournir un titre court de niveau 2 sur la solution principale, puis présenter cette solution de manière concise.
Voici mon code Java pour ajouter des produits à mon inventaire. Mon responsable d'équipe m'a dit que le code n'était pas efficace et que je rencontrerai des problèmes lorsque le nombre de produits augmenterait. Pouvez-vous me suggérer une façon de corriger le code pour éviter ce problème et implémenter complètement cette modification dans le code ?
importjava.util.ArrayList;importjava.util.List;importjava.util.Random;publicclassProductInventory{privatestaticfinalList<Product>products=newArrayList<>();privatestaticfinalRandomrandom=newRandom();publicstaticvoidmain(String[]args){addProduct("Product1");addProduct("Product2");addProduct("Product3");System.out.println("All Products:");for(Productproduct:products){System.out.println("Name: "+product.getName()+", ID: "+product.getId());}}publicstaticvoidaddProduct(StringproductName){StringrandomId;booleanidIsUnique;longstartTime;longendTime;longduration;// Record start timestartTime=System.nanoTime();do{randomId=getRandomId();idIsUnique=true;for(Productproduct:products){if(product.getId().equals(randomId)){idIsUnique=false;System.out.println("ID "+randomId+" already exists. Generating a new ID.");break;}}}while(!idIsUnique);products.add(newProduct(productName,randomId));System.out.println("Added "+productName+" with ID: "+randomId);// Record end time and calculate durationendTime=System.nanoTime();duration=endTime-startTime;System.out.println("Time taken to add "+productName+": "+duration+" nanoseconds");}publicstaticStringgetRandomId(){return"ID"+random.nextInt(1000);}}// Product class to store product name and IDclassProduct{privatefinalStringname;privatefinalStringid;publicProduct(Stringname,Stringid){this.name=name;this.id=id;}publicStringgetName(){returnname;}publicStringgetId(){returnid;}}
Réponse
Utiliser un ensemble pour stocker des produits
importjava.util.HashSet;importjava.util.Random;importjava.util.Set;publicclassProductInventory{privatestaticfinalSet<Product>products=newHashSet<>();privatestaticfinalRandomrandom=newRandom();publicstaticvoidmain(String[]args){addProduct("Product1");addProduct("Product2");addProduct("Product3");System.out.println("All Products:");for(Productproduct:products){System.out.println("Name: "+product.getName()+", ID: "+product.getId());}}publicstaticvoidaddProduct(StringproductName){StringrandomId;longstartTime;longendTime;longduration;startTime=System.nanoTime();do{randomId=getRandomId();}while(!products.add(newProduct(productName,randomId)));System.out.println("Added "+productName+" with ID: "+randomId);endTime=System.nanoTime();duration=endTime-startTime;System.out.println("Time taken to add "+productName+": "+duration+" nanoseconds");}publicstaticStringgetRandomId(){return"ID"+random.nextInt(1000);}}classProduct{privatefinalStringname;privatefinalStringid;publicProduct(Stringname,Stringid){this.name=name;this.id=id;}publicStringgetName(){returnname;}publicStringgetId(){returnid;}@Overridepublicbooleanequals(Objectobj){if(this==obj)returntrue;if(obj==null||getClass()!=obj.getClass())returnfalse;Productproduct=(Product)obj;returnid.equals(product.id);}@OverridepublicinthashCode(){returnid.hashCode();}}
Modèle :
gemini-1.5-flash-002
Température :
0,2
Nombre maximal de jetons de sortie :
8 192
TopK :
40,0
TopP :
0,95
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/02/14 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/02/14 (UTC)."],[],[]]