diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java index 4e1fdcfbe50c..4a4c1af61de5 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java @@ -1013,6 +1013,20 @@ public String toArrayDefaultValue(CodegenProperty cp, Schema schema) { } else { if (cp.items.isString) { // array item is string defaultValue = String.format(Locale.ROOT, "\"%s\"", StringUtils.join(_values, "\", \"")); + } else if (cp.items.isNumeric) { + defaultValue = _values.stream() + .map(v -> { + if ("BigInteger".equals(cp.items.dataType)) { + return "new BigInteger(\"" + v + "\")"; + } else if ("BigDecimal".equals(cp.items.dataType)) { + return "new BigDecimal(\"" + v + "\")"; + } else if (cp.items.isFloat) { + return v + "f"; + } else { + return v; + } + }) + .collect(Collectors.joining(", ")); } else { // array item is non-string, e.g. integer defaultValue = StringUtils.join(_values, ", "); }