169 похожих чатов

Public static HttpRequest.BodyPublisher ofFormData(

Map<Object, Object> data
) {
var first = true;
var builder = new StringBuilder();
for (Map.Entry<Object, Object> entry :
data.entrySet()) {
if (first) first = false;
else builder.append("&");
builder.append("=");
builder.append(URLEncoder.encode(
entry.getKey().toString(),
StandardCharsets.UTF_8
));
}
return HttpRequest.BodyPublishers.ofString(
builder.toString()
);
}

не пойму а в чем смысл if (first) first = false; и по сути непонятно если ферст что?

29 ответов

36 просмотров

Что произойдет по коду, если будет не first?

боже, так форму собирать... смысл - первый элемент коллекции обработать по другому

Eminem- Автор вопроса
Eminem
не пойму вообще)

Ты по коду мне скажи. Ты же знаешь, что иф делает и все такое. Вот и отвечай)

Eminem- Автор вопроса
Eminem
это else builder.append("&");

Ну вот. Получается, когда false=true, этого не случится

а как по -твоему иф работает? и что у него в скобочках пишут?

Eminem
это else builder.append("&");

А теперь скажи мне, ты url с параметрами видел хоть раз? Просмотрись)

Eminem
не пойму вообще)

сокращение ферст=труе

Bitarded
сокращение ферст=труе

почему сокращение, если условие - это boolean

Eminem- Автор вопроса

Помогите кто нибудь так я и не разобрался

Eminem
Помогите кто нибудь так я и не разобрался

ну если по коду непонятно, то запусти дебаггер и по шагам пройди метод и посмотри что и как меняется

Так ещё else есть

Eminem- Автор вопроса
Алексей
Откуда код?

хорстман 2 том

Eminem
Помогите кто нибудь так я и не разобрался

Тебе не понятно что конкретно? 1)Синтаксис if(first) 2) зачем нужна такая конструкция в цикле? 3) зачем нужно так строить урл?

Eminem- Автор вопроса
0xDEADFACE
Тебе не понятно что конкретно? 1)Синтаксис if(firs...

зачем тут нужен if непойму как он тут работает. в общем непойму иф, зачем этот тут ферст, по идее его сюда поставили что ферст будет всегда и чтобы его изменить в фоллса или зачем он нужен. ну судя по этой логике и не нужен был этот иф

Eminem
зачем тут нужен if непойму как он тут работает. в...

Совет подебажить вроде выше был. Думаю он самый актуальный

Eminem
зачем тут нужен if непойму как он тут работает. в...

Ок, погнали. Строка запроса(ссылка которую я тебе кидал) передается в таком виде Протокол://хост:порт/ресурс?параметр1=значение&параметр2=значение2&параметр3=значение3... Обрати внимание на часть с параметрами(которая после вопроса) Если ты захочешь построить такую строку то можно параметры со значениями засунуть в мапу и потом их сджойнить поставив между ними амперсанд. Сделать это можно, например, пройдясь по всем элементам мапы в цикле и дописать в строку "&"+entry.key+"="+entry.value Но вот для первого элемента этот амперсанд мешает, поэтому автор завел переменную first и присвоил ей значение true, чтобы для первого элемента не добавлять амперсанд в стринг билдер, а просто переключить его значение в фолс, чтобы на последующих проходах амперсанд добавлялся в начало. В джаве у ифа в условии(скобочках) можно написать любое выражение с типом boolean, что позволяет сократить if(first==true) до if(first)(про это тебе тоже писали)

Eminem
зачем тут нужен if непойму как он тут работает. в...

Ты что, рыбка? Все, к чему мы вчера пришли уже забыл?

Eminem
зачем тут нужен if непойму как он тут работает. в...

Ну простым языком если мы добавляем первую пару ключ-значение, нам не нужно ставить перед ней "&". Но для всех последующих пар нам нужно добавлять этот символ перед ними.

Eminem- Автор вопроса
0xDEADFACE
Ок, погнали. Строка запроса(ссылка которую я тебе...

ох блин спасибо большое)) вообще не мог понять)

Eminem- Автор вопроса
Дэни
Ты что, рыбка? Все, к чему мы вчера пришли уже заб...

да я смотрел смотрел все равно непонял)

Eminem
ох блин спасибо большое)) вообще не мог понять)

Решай задачи из учебника, это правда помогает

Eminem
да я смотрел смотрел все равно непонял)

Что значит "не понял"? Там простой иф и флаг, который можно переключать. Что конкретно не понял?

Eminem- Автор вопроса

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
Почему стало ломаться на D11? "739002.86400000' is not a valid timestamp" function IncDateTime(aStamp:TTimeStamp;aKind:TTriggerKind;aInterval:Integer):TDateTime; //aStamp = 2...
Катерина Свиридова
8
У тебя в конфиге нигде нет deny all; или вообще любого deny?
Alexander Sherbakov
10
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Есть ли смысл устраиваться на 1с ? Даст это плюс в дальнейшем трудоустройстве на php? Просто у меня в городе вакансий на пхп нету. Или лучше удаленно искать. Опыта работы нету...
Azamat
14
Ребят, чет я уже не догоняю... Крч в коде на асм там происходит нечто вроде a+число (a+1, a+2 и т.д.). Но почему строка lea ecx, [edx+1] работает как a+1?? В edx берется адрес...
Alan 🔝 Бэброу
4
Карта сайта