Следующая Python отрезала делает именно то, что я имею в виду:Как я могу расширить аргументы в Java?
#!/usr/bin/python
# -*- coding: utf-8 -*-
def function(a, b, c):
print("%i :: %s :: %f" % (a,b,c))
a = 1
b = "abc"
c = 1.0
function(a, b, c)
list = [a, b, c]
# This is what I am searching for in Java
function(*(list))
Так у меня есть один список-структура, и я не знаю, сколько аргументов у него есть, но я знаю, что он имеет правильное число аргументов с правильным типом и форматом. И я хочу передать их методу. Поэтому я должен «расширить» эти аргументы. Кто-нибудь знает, как это сделать на Java?
Возможно, вы ищете [для] (http://stackoverflow.com/questions/766559/when-do-you-use-varargs-in-java) [varargs] (http://docs.oracle.com /javase/1.5.0/docs/guide/language/varargs.html)? –
Определить "expand"? Из вашего примера неясно, что это значит. – Tudor
Если вы просто хотите использовать что-то вроде оператора '%', вы можете использовать класс «Formatter», как в моем ответе ниже. –