#android #kotlin #hashmap
#Android #kotlin #hashmap
Вопрос:
Если вы используете hashmap, возникает ошибка из-за проблемы с инициализацией. Как я должен выполнить инициализацию?
var requestHashMap:HashMap<String, RequestBody>
requestHashMap["sound"] = file.asRequestBody("multipart/form-data".toMediaTypeOrNull())
requestHashMap["content"] = content.toRequestBody("multipart/form-data".toMediaTypeOrNull())
requestHashMap["img"] = getImageFile!!.asRequestBody("multipart/form-data".toMediaTypeOrNull())
Ответ №1:
вы можете исправить свой код, только изменив эту строку:
var requestHashMap: HashMap<String, RequestBody> = hashMapOf()
или изменить весь ваш код на этот:
var requestHashMap :HashMap<String, RequestBody> = hashMapOf(
"sound" to file.asRequestBody("multipart/form-data".toMediaTypeOrNull()),
"content" to content.toRequestBody("multipart/form-data".toMediaTypeOrNull()),
"img" to getImageFile!!.asRequestBody("multipart/form-data".toMediaTypeOrNull()))
Ответ №2:
Вы должны создать свой HashMap после его объявления :
var requestHashMap = hashMapOf<String, RequestBody>()
requestHashMap["sound"] = file.asRequestBody("multipart/form-data".toMediaTypeOrNull())
requestHashMap["content"] = content.toRequestBody("multipart/form-data".toMediaTypeOrNull())
requestHashMap["img"] = getImageFile!!.asRequestBody("multipart/form-data".toMediaTypeOrNull())
В вашем коде вы только что объявили переменную с именем requestHashMap типа HashMap
Для большего стиля кодирования kotlin :
var requestHashMap = hashMapOf<String, RequestBody>(
"sound" to file.asRequestBody("multipart/form-data".toMediaTypeOrNull()),
"content" to content.toRequestBody("multipart/form-data".toMediaTypeOrNull()),
"img" to getImageFile!!.asRequestBody("multipart/form-data".toMediaTypeOrNull())
)