Гость
Используйте функции Java Stream — если в цикле необходимо выполнить несколько операторов.
Сообщение
Гость » 14 мар 2024, 14:58
Как использовать функции Java Stream — если в цикле необходимо выполнить несколько операторов:
Фрагмент кода:
Код: Выделить всё
PDAcroForm pdAcroForm = pdfDocument.getDocumentCatalog().getAcroForm();
JSONObject jsonData = new JSONObject(pdfdata);
String[] specialChars = {" ", "-", ".", "(", ")", "/", "*"};
String[] specialCharsReplaceWith = {"_", "_1_", "_2_", "_3_", "_4_", "_5_", "_6_"};
for (PDField pdField : pdAcroForm.getFields()) {
String fieldName = pdField.getFullyQualifiedName();
System.out.println("fieldName:" + fieldName);
for(int i = 0; i < specialChars.length; i++) {
fieldName = fieldName.trim().replace(specialChars[i], specialCharsReplaceWith[i]);
}
if(StringUtils.isNotEmpty(fieldName)) {
fieldName = fieldName.substring(0, 1).toLowerCase().concat(fieldName.substring(1));
}
if (jsonData.has(fieldName)) {
String value = jsonData.getString(fieldName);
pdField.setValue(value);
pdField.setReadOnly(true);
}
}
есть предложения?
Подробнее здесь:
https://stackoverflow.com/questions/781 ... n-the-loop
1710417497
Гость
Как использовать функции Java Stream — если в цикле необходимо выполнить несколько операторов: Фрагмент кода: [code]PDAcroForm pdAcroForm = pdfDocument.getDocumentCatalog().getAcroForm(); JSONObject jsonData = new JSONObject(pdfdata); String[] specialChars = {" ", "-", ".", "(", ")", "/", "*"}; String[] specialCharsReplaceWith = {"_", "_1_", "_2_", "_3_", "_4_", "_5_", "_6_"}; for (PDField pdField : pdAcroForm.getFields()) { String fieldName = pdField.getFullyQualifiedName(); System.out.println("fieldName:" + fieldName); for(int i = 0; i < specialChars.length; i++) { fieldName = fieldName.trim().replace(specialChars[i], specialCharsReplaceWith[i]); } if(StringUtils.isNotEmpty(fieldName)) { fieldName = fieldName.substring(0, 1).toLowerCase().concat(fieldName.substring(1)); } if (jsonData.has(fieldName)) { String value = jsonData.getString(fieldName); pdField.setValue(value); pdField.setReadOnly(true); } } [/code] есть предложения? Подробнее здесь: [url]https://stackoverflow.com/questions/78160154/use-java-stream-features-if-multiple-statements-to-be-executed-within-the-loop[/url]