Size: a a a

2020 July 11

GI

Grigorij I. in learn.java
отдаёт же изменённое имя, очевидно обьект один и тот же, в чем вопрос то
источник

C

Combot in learn.java
Total messages: 253966
источник

A

Anton in learn.java
Alex F
Returns a fixed-size list backed by the specified array. Changes made to the array will be visible in the returned list, and changes made to the list will be visible in the array.

Почему? Потому. Ну ок.
Мало того, чтобы жизнь медом не казалась:
Unlike java.util.ArrayList, the List returned by Arrays.asList does not implement all of List functions. If you try to use methods like add(), it will throw UnsupportedOperationException

Таков дизайн функции asList. Не хочешь, не ешь.
источник

AF

Alex F in learn.java
Anton
Мало того, чтобы жизнь медом не казалась:
Unlike java.util.ArrayList, the List returned by Arrays.asList does not implement all of List functions. If you try to use methods like add(), it will throw UnsupportedOperationException

Таков дизайн функции asList. Не хочешь, не ешь.
Вот это поворот :) Спасибо )
источник

AF

Alex F in learn.java
Хотя логично, fixed size жи
источник

A

Anton in learn.java
Alex F
Вот это поворот :) Спасибо )
Ссылка и там и там на тот же объект типа Array. Поэтому операции list.set(0, "Sue") или names[0] = "Sue" меняют все тот же объект Array в heap, но разными синтаксическими конструкциями языка.
источник

AF

Alex F in learn.java
Anton
Ссылка и там и там на тот же объект типа Array. Поэтому операции list.set(0, "Sue") или names[0] = "Sue" меняют все тот же объект Array в heap, но разными синтаксическими конструкциями языка.
Почему-то подумал, что логичнее было бы делать копию 💁‍♂️
источник

A

Anton in learn.java
Alex F
Почему-то подумал, что логичнее было бы делать копию 💁‍♂️
Тогда лучше Erlang учить, там все копированием передаётся, даже операция  a = a + 1 создаст новую копию в новой ячейке памяти. Но эта иммутабельность дорого стоит памяти и не для всех задач хорошо подходит.
источник

GI

Grigorij I. in learn.java
и что ему потом с этим эрлангом делать
источник

GI

Grigorij I. in learn.java
просто для кругозора оно конечно неплохо как и с другими языками, а так …
источник

AI

Alexey Izbrodin in learn.java
На этом курсе вначале ты сам скачиваешь все зависимости и в эклипсе показавешь где что лежит. Мавен там в первых уроках не нужен. Если ты подтянул Спринг, я бы посоветовал тебе ещё раз пересмотреть.
источник

A

Anton in learn.java
Grigorij I.
просто для кругозора оно конечно неплохо как и с другими языками, а так …
Вопрос про логичнее, а не про доходнее.
Логичность этого  конкретного вопроса упирается в конкретные задачи, а не в библиотеки и языки. На java можно и копировать и не копироать, а на некоторых языках можно только копировать, без возможности выбора, это полезно знать о логичности дизайна библотек.

Arrays.asList() - логичен по названию - представляет тот же самый массив, но в виде коллекции.

Arrays.copyOf() - сделает копию массива и тоже назван логично.

А если не хочется сталкиваться с ограничениями объекта, возвращаеиого Arrays.asList(), то нужно или сразу создать обычную коллекцию  ArrayList, или использовать
Collections.copy()  для копирования ограниченного List в обычный ArrayList и потратив ресурсы на копирование.
источник

GI

Grigorij I. in learn.java
не понял при чем здесь логичнее/доходнее
я вообще не поднимал вопрос про логично не логично
источник

A

Anton in learn.java
@desdichago поднимал
источник

GI

Grigorij I. in learn.java
ок) просто ты мой ответ тегнул
источник

AF

Alex F in learn.java
Всё гуд, спасибо обоим за подсказки )
источник

SK

Sergei Kutcher in learn.java
Добрый вечер! Подскажите пожалуйста - мне нужно протестировать два метода - метод_1, метод_2
метод_1
тестирует свою логику, но меняет Объект_1 в коллекции.
метод_2 тестирует значение из Объекта_1, после работы метода_1

Я запустил два теста test_метод_1, test_метод_2, но значение Объекта_1 меняется только в пределах работы test_метода_1

Как мне проверить значения Объекта_1 в коллекции, после test_метода_1
источник

ch

central hardware in learn.java
Sergei Kutcher
Добрый вечер! Подскажите пожалуйста - мне нужно протестировать два метода - метод_1, метод_2
метод_1
тестирует свою логику, но меняет Объект_1 в коллекции.
метод_2 тестирует значение из Объекта_1, после работы метода_1

Я запустил два теста test_метод_1, test_метод_2, но значение Объекта_1 меняется только в пределах работы test_метода_1

Как мне проверить значения Объекта_1 в коллекции, после test_метода_1
переписать все на чистые функции
источник

🕵

🕵️‍♂️ in learn.java
Вы возможно знаете, что у одной компании есть два офиса в Америке: один из них в Сан-Франциско, а другой в Сиэтле. Будучи менеджером в этой компании, вам приходится много перемещаться между этими двумя городами. Вы всегда летаете на самолете.

Вам больше нравится летать из Сиэтла в Сан-Франциско, чем в обратном направлении, так как в Сан-Франциско теплее. Вы настолько заняты, что не помните, сколько раз летали в каждом направлении. Однако. про каждый из последних n дней вы помните, были ли вы в офисе в Сан-Франциско, или в офисе в Сиэтле в тот день. Вы всегда летаете ночью, поэтому вы не могли быть в обоих офисах в один и тот же день. По данной информации определите, летали ли вы больше из Сиэтла в Сан-Франциско за последние n дней, или нет.

Входные данные
Первая строка содержит одно целое число n (2 ≤ n ≤ 100) — количество дней.

Вторая строка содержит строку длины n, состоящую только из заглавных букв «S» и «F» латинского алфавита. Если i-я буква — это «S», то вы были в офисе в Сиэтле в тот день, иначе вы были в Сан-Франциско. Дни даны в хронологическом порядке, то есть сегодня — последний день в этой последовательности.

Выходные данные
Выведите «YES», если вы летали больше раз из Сиэтла в Сан-Франциско, и «NO» иначе.

входные данные
4
FSSF
выходные данные
NO
входные данные
2
SF

Код:

import java.util.Scanner;


public class Main {
  public static void main(String args[]) {
   
    int sf = 0, fs = 0;
   
    Scanner scan = new Scanner(System.in);
   
    int n = scan.nextInt();
    String town = scan.next();
   
    if(n == town.length()) {
     
      for(int i = 0; i < town.length(); ++i) {
      int index = town.indexOf("SF");
      if(index > -1) sf++;
      else break;
      }
     
      for(int i = 0; i < town.length(); ++i) {
        int index = town.indexOf("FS");
        if(index > -1) fs++;
        else break;
      }
     System.out.println(sf > fs ? "YES" : "NO");
    }
   
  }
}

И всё время ошибка на таком тесте:

Test: #4, время: 187 мс., память: 23784 КБ, код возврата: 0, код возврата чекера: 1, вердикт: WRONG_ANSWER
Ввод:
10
SSFFSFFSFF

Вывод:
NO

Протокол тестирования:
wrong answer expected YES, found NO
источник

🕵

🕵️‍♂️ in learn.java
В чём же ошибка?
источник