Заливка выстраивает с диапазонами чисел

Для меня это было решено следующим образом с помощью студии SQL Server Management -Log в качестве администратора (я вошел в систему как проверка подлинности Windows) -Отключить файл mdf (щелкните правой кнопкой мыши Database | attach | Add) -Log out as admin - Войдите как обычный пользователь

27
задан kiamlaluno 2 August 2010 в 11:46
поделиться

3 ответа

Не совсем такой же чистый, как ответ True Soft, но вы можете использовать Google Guava с тем же эффектом:

public class Test {

    public static void main(String[] args) {
        //one liner
        int[] array = toArray(newLinkedList(concat(range(1, 10), range(500, 1000))));

        //more readable
        Iterable<Integer> values = concat(range(1, 10), range(500, 1000));
        List<Integer> list = newLinkedList(values);
        int[] array = toArray(list);

    }

    public static List<Integer> range(int min, int max) {
        List<Integer> list = newLinkedList();
        for (int i = min; i <= max; i++) {
            list.add(i);
        }

        return list;
    }

}

Обратите внимание, что вам нужно несколько статических импортов, чтобы это работало.

7
ответ дан 28 November 2019 в 04:01
поделиться

Существует доллар :

// build the List 10, 11, 12, 13, 14
List<Integer> list2 = $(10, 15).toList();

maven:

<dependency>
        <groupId>org.bitbucket.dollar</groupId>
        <artifactId>dollar</artifactId>
        <version>1.0-beta3</version>
</dependency>
18
ответ дан Suzker 28 November 2019 в 04:01
поделиться

Что касается первого вопроса, возможно ли заполнить массив значениями диапазона: на самом деле можно достичь этого с помощью комбинации Range , DiscreteDomain , ContiguousSet и Ints из Гуава :

int[] array = Ints.toArray(
    ContiguousSet.create(Range.closed(1, 500), DiscreteDomain.integers()));

И, не совсем то, что упоминается во второй части вопроса, но можно создать набор с элементами диапазона дискретной области:

Set<Integer> numbersFrom1To500 = 
    ContiguousSet.create(Range.closed(1, 500), DiscreteDomain.integers());

Результирующий Set не будет содержать указанные элементы физически, только логически (поэтому его объем памяти будет небольшим ), но может быть повторен (так как это Set):

for (Integer integer : numbersFrom1To500) {
    System.out.println(integer);
}
8
ответ дан Katona 28 November 2019 в 04:01
поделиться
Другие вопросы по тегам:

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