Je veux obtenir des trimestres du reste de l'API comme liste. J'ai essayé ceci:
@Service public class TimezoneService { public List<String> getTimezoneList() { List<String> list = new ArrayList<>(); String[] allTimeZones = TimeZone.getAvailableIDs(); Arrays.sort(allTimeZones); for (int i = 0; i < allTimeZones.length; i++) { list.add(allTimeZones[i]); } return list; } }
3 Réponses :
Il suffit d'utiliser la méthode entrée () code> est une méthode que
mappe code> a, pas
listes code>.
() code> directement sur la liste, sans
entrée () code>, comme ceci: p>
return ResponseEntity.ok(timezoneService.getTimezoneList().stream()
.map(g -> new AcquirerTimezoneDTO(g.getKey())).collect(Collectors.toList()));
Je reçois la méthode getkey () est indéfinie pour la chaîne de type
@Peterpenzov Changez-le à .MAP (AcquireTimeZonedto :: Nouveau) .Collect (Collectors.Tolist ())) Code>
Vous devez modifier l'appel de l'API depuis API de la liste n'a pas TimeZoneservice.gettimezOntzonelist (). Stream () p>
entrée () code> p>
Je reçois la méthode getkey () est indéfinie pour la chaîne de type
Vous pouvez utiliser le flux directement sur la liste:
@GetMapping("timezone") public ResponseEntity<?> getTimezone() { return ResponseEntity.ok(timezoneService.getTimezoneList().stream() .map(g -> new AcquirerTimezoneDTO(g.getKey())).collect(Collectors.toList())); }
Je reçois la méthode getkey () est indéfinie pour la chaîne de type
@Peterpenzov parce qu'un objet de chaîne n'a pas de getkey () code> méthode
Que devrais-je utiliser? Je n'ai pas GettimeZone ()
@Peterpenzov la même chose qu'auparavant. Supprimer getkey () code> car vous travaillez déjà avec la chaîne.