Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void givenAllActive(String... taskText){
- String prefics = "{\\\"completed\\\":false, \\\"title\\\":\\\"";
- String suffics = "\\\"}";
- String requestString = "";
- String result = "localStorage.setItem(\"todos-troopjs\", \"[";
- String end = "]\")";
- StringJoiner joiner = new StringJoiner(", ");
- for (String task : taskText) {
- requestString = requestString + prefics + task + suffics;
- joiner.add(requestString);
- requestString = "";
- }
- result = result + joiner.toString() + end;
- System.out.println("Result: " + result);
- executeJavaScript(result);
- //executeJavaScript("localStorage.setItem(\"todos-troopjs\", \"[{\\\"completed\\\":false, \\\"title\\\":\\\"" + task + "\\\"}]\")");
- executeJavaScript("location.reload()");
- }
- сравни - как бы это было без такого количества переменных
- private void givenAllActive(String... taskText){
- String requestString = "";
- StringJoiner joiner = new StringJoiner(", ");
- for (String task : taskText) {
- requestString = requestString + "{\\\"completed\\\":false, \\\"title\\\":\\\"" + task + "\\\"}";
- joiner.add(requestString);
- requestString = "";
- }
- String result = "localStorage.setItem(\"todos-troopjs\", \"[" + joiner.toString() + "]\")";
- System.out.println("Result: " + result);
- executeJavaScript(result);
- executeJavaScript("location.reload()");
- }
- это я не меняла логики
- только от переменных избавилась)
- стало менее понятно или запутанно?
- нет
- переменные нам нужны - если что-то используется неоднократно
- а тут все кусочки строки в коде - лишь однократно встречаются
- и не надо переключать внимание - а что ж там в той переменной содержится
- *************************************************************
- про вот этот кусочек
- requestString = requestString + "{\\\"completed\\\":false, \\\"title\\\":\\\"" + task + "\\\"}";
- joiner.add(requestString);
- requestString = "";
- его можно упростить до
- joiner.add("{\\\"completed\\\":false, \\\"title\\\":\\\"" + task + "\\\"}");
- *********************************************
- и вот это - String... taskText
- это текстЫ
- потому - taskTexts
- и в цикле лучше
- не for (String task : taskText)
- а for (String taskText : taskTexts)
- **********************************************
- итого - получим)
- private void givenAllActive(String... taskTexts){
- StringJoiner joiner = new StringJoiner(", ");
- for (String taskText : taskTexts) {
- joiner.add("{\\\"completed\\\":false, \\\"title\\\":\\\"" + taskText + "\\\"}");
- }
- String result = "localStorage.setItem(\"todos-troopjs\", \"[" + joiner.toString() + "]\")";
- System.out.println("Result: " + result);
- executeJavaScript(result);
- executeJavaScript("location.reload()");
- }
- а если еще и не выводить отладочное сообщение - то вообще красота будет
- private void givenAllActive(String... taskTexts){
- StringJoiner joiner = new StringJoiner(", ");
- for (String taskText : taskTexts) {
- joiner.add("{\\\"completed\\\":false, \\\"title\\\":\\\"" + taskText + "\\\"}");
- }
- executeJavaScript("localStorage.setItem(\"todos-troopjs\", \"[" + joiner.toString() + "]\")");
- executeJavaScript("location.reload()");
- }
- но - пока не советую убирать отладочное сообщение
- оно тебе еще пригодится)
- дальше развивай по прошлому ревью - с 19-й строки и далее)
Advertisement
Add Comment
Please, Sign In to add comment