Funkcja jest wariadyczna, jeśli może przyjmować zmienną liczbę argumentów; to znaczy, jego liczba nie jest ustalona. Skrót „varargs” jest powszechnie używany w odniesieniu do tego typu funkcji.
На этот вопрос есть ответы на Stack Overflow w : Что значит * (звёздочка) и ** двойная звёздочка в Питоне? W poniższych definicjach metod do czego służy *i **do czego służy param2? def foo(param1, *param2): def bar(param1, **param2):
Próbuję połączyć plasterek [1, 2]i plasterek [3, 4]. Jak mogę to zrobić w Go? Próbowałem: append([]int{1,2}, []int{3,4}) ale dostałem: cannot use []int literal (type []int) as type int in append Jednak dokumentacja wskazuje na to, to jest możliwe, czego mi brakuje? slice = append(slice, anotherSlice...)
Rozumiem, że dzieje się tak w przypadku Java 7, gdy używa się varargs z typem ogólnym; Ale moje pytanie brzmi ... Co dokładnie oznacza Eclipse, gdy mówi „jego użycie może potencjalnie zanieczyścić stertę?” I W jaki sposób nowa @SafeVarargsadnotacja temu zapobiega?
Chcesz poprawić ten post? Podaj szczegółowe odpowiedzi na to pytanie, w tym cytaty i wyjaśnienie, dlaczego Twoja odpowiedź jest poprawna. Odpowiedzi bez wystarczającej ilości szczegółów mogą być edytowane lub usuwane. argumentsObiektu w JavaScript jest nieparzystą brodawka-to działa podobnie jak tablicy w większości sytuacji, ale to nie jest faktycznie przedmiotem tablicą. …
Wiem, że to podstawowe pytanie, ale nie mogłem znaleźć odpowiedzi. Po co z tego korzystać? jeśli napiszesz funkcję lub metodę, która jej używa, po jej usunięciu kod nadal będzie działał idealnie, w 100% jak bez niego. Na przykład: Z params: static public int addTwoEach(params int[] args) { int sum = …
Powiedzmy, że mam funkcję C, która pobiera zmienną liczbę argumentów: Jak mogę wywołać inną funkcję, która oczekuje od niej zmiennej liczby argumentów, przekazując wszystkie argumenty, które dostały się do pierwszej funkcji? Przykład: void format_string(char *fmt, ...); void debug_print(int dbg_lvl, char *fmt, ...) { format_string(fmt, /* how do I pass all …
Chciałbym móc stworzyć funkcję, taką jak: class A { private String extraVar; public String myFormat(String format, Object ... args){ return String.format(format, extraVar, args); } } Problem polega na tym, że argsjest traktowany jak Object[]w metodzie myFormat, a tym samym jest jednym argumentem String.format, natomiast chciałbym każdy Objectw argsktóre mają być …
Zasadniczo mam ArrayList lokalizacji: ArrayList<WorldLocation> locations = new ArrayList<WorldLocation>(); poniżej nazywam następującą metodę: .getMap(); parametry w metodzie getMap () to: getMap(WorldLocation... locations) Problem, który mam, polega na tym, że nie jestem pewien, jak przekazać CAŁĄ listę locationsdo tej metody. próbowałem .getMap(locations.toArray()) ale getMap tego nie akceptuje, ponieważ nie akceptuje Objects …
Boję się varargs. Nie wiem do czego ich używać. Ponadto niebezpieczne jest pozwalanie ludziom przekazywać tyle argumentów, ile chcą. Jaki jest przykład kontekstu, który byłby dobrym miejscem do ich użycia?
Niedawno natknąłem się na @SafeVarargsadnotację java . Szukanie w Google, co sprawia, że funkcja wariadyczna w Javie jest niebezpieczna, wprawiło mnie w zakłopotanie (zatrucie sterty? Usunięte typy?), Więc chciałbym wiedzieć kilka rzeczy: Co sprawia, że zmienna funkcja Java jest niebezpieczna w tym @SafeVarargssensie (najlepiej wyjaśnione w formie szczegółowego przykładu)? Dlaczego …
Czy jest możliwe wysłanie zmiennej liczby argumentów do funkcji JavaScript z tablicy? var arr = ['a','b','c'] var func = function() { // debug alert(arguments.length); // for(arg in arguments) alert(arg); } func('a','b','c','d'); // prints 4 which is what I want, then 'a','b','c','d' func(arr); // prints 1, then 'Array' Niedawno napisałem dużo …
Próbowałem uzyskać mock metody z parametrami vararg przy użyciu Mockito: interface A { B b(int x, int y, C... c); } A a = mock(A.class); B b = mock(B.class); when(a.b(anyInt(), anyInt(), any(C[].class))).thenReturn(b); assertEquals(b, a.b(1, 2)); To nie działa, jeśli jednak zrobię to: when(a.b(anyInt(), anyInt())).thenReturn(b); assertEquals(b, a.b(1, 2)); Działa to pomimo …
W języku szybkiego programowania mówi: Funkcje mogą również pobierać zmienną liczbę argumentów, zbierając je w tablicę. func sumOf(numbers: Int...) -> Int { ... } Kiedy wywołuję taką funkcję z listą liczb oddzielonych przecinkami (sumOf (1, 2, 3, 4), są one udostępniane jako tablica wewnątrz funkcji. Pytanie: co jeśli mam już …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.