¿Cómo usar parámetros variádicos en Swift?

Una función es un bloque de código que se utiliza para realizar alguna tarea específica. Es reutilizable y ahorra tiempo y recursos al escribir el mismo código una y otra vez. La sintaxis de la función Swift es lo suficientemente flexible para crear funciones simples y complejas. Una definición de función contiene su nombre, lista de parámetros y valor de retorno. No es necesario que una función contenga siempre una lista de parámetros o un tipo de retorno, depende de la necesidad del usuario. En el lenguaje Swift, una función admite tres tipos de parámetros: parámetros predeterminados, parámetros de entrada y saliday parámetros variadicos. De forma predeterminada, una función contiene parámetros constantes que también se conocen como parámetros predeterminados, aquí el parámetro constante significa que el valor de la función no se puede cambiar y si intentamos cambiar, el compilador dará un error. La sintaxis general para crear una función es:

Sintaxis:

func functionName(parameterName: type) -> returnType{

// Cuerpo de la función

}

Ahora discutiremos los parámetros variadicos.

Parámetros Variádicos

En Swift, los parámetros variádicos son el tipo especial de parámetros disponibles en la función. Se utiliza para aceptar cero o más valores del mismo tipo en la función. También se utiliza cuando el valor de entrada del parámetro varía en el momento en que se llama a la función. En la función Swift, cuando estamos trabajando con parámetros variádicos, es necesario que los valores pasados ​​al parámetro variádico se usen dentro del cuerpo de la función como una array de un tipo específico. Una sola función puede contener múltiples parámetros variádicos y es necesario que el parámetro venga después del primer parámetro variádico que contiene la etiqueta del argumento. Hará que los parámetros no sean ambiguos para que sea fácil para el compilador entender qué argumento se pasa a qué parámetros (es decir, es variable y el parámetro viene después del parámetro variable).

Sintaxis:

func functionName(_parameterName: type …) -> returnType{

// Cuerpo de la función

}

Ejemplo:

Swift

// Swift program to illustrate variadic parameter
import Swift
  
// Creating a function with variadic parameter
// Here this function find the total marks of semseter 1
func StudentResult(_ marks:Int...) -> Int{
    var sum = 0
      
    // Finding the sum of the given marks
    for i in marks{
        sum += i
    }
    return sum
}
  
// Calling function with a list of parameters
// Marks of all the subjects
var summ = StudentResult(23, 45, 66, 77, 88, 66)
  
// Displaying the result
print("Total marks of semester 1: ", summ)

Producción:

Total marks of semester 1:  365

Parámetros variádicos con otros parámetros

En función, se nos permite usar parámetros variádicos junto con otros parámetros. Cuando usamos un parámetro variádico con otros parámetros, el parámetro variádico se coloca en la primera posición y luego se usan los otros parámetros. Es necesario que el parámetro que viene después del primer parámetro variadic contenga la etiqueta del argumento porque hará que los parámetros no sean ambiguos para que sea fácil para el compilador entender qué argumento se pasa a qué parámetro, ya sea para variadic o el parámetro que viene después. el parámetro variádico.

Sintaxis:

func functionName(_parameterName: tipo …, parámetroName2: tipo, parámetroName3: tipo) -> returnType{

// Cuerpo de la función

}

Ejemplo:

Swift

// Swift program to illustrate variadic parameter with other parameters
import Swift
  
// Creating a function with variadic and default parameter
// Here this function find the total marks of semseter 1
// and name of the student
func StudentResult(_ marks:Int..., Sname: String){
  
    var sum = 0
      
    // Finding the sum of the given marks
    for i in marks{
        sum += i
    }
      
    // Displaying the name of the student and result
    print("Name of the student: ", Sname)
    print("Total marks of semester 1: ", sum)
}
  
// Calling function with a list of parameters 
// that is variadic and default parameter
// Marks of all the subjects and name of the student
StudentResult(23, 45, 66, 77, 88, 66, Sname: "Rohan")

Producción:

Name of the student:  Rohan
Total marks of semester 1:  365

Múltiples parámetros Variádicos

Una función Swift puede contener múltiples parámetros variados a partir de Swift 5.4. La versión anterior de Swift no admite múltiples parámetros variables en la función, si intenta usarlos obtendrá un error de compilación. En múltiples parámetros variádicos, es necesario que todos los parámetros variádicos contengan la etiqueta del argumento porque hará que los parámetros no sean ambiguos para que sea fácil para el compilador entender qué argumento se pasa a qué parámetros. Si no usamos la etiqueta del argumento al momento de llamar a la función, entonces el compilador asigna todos los valores al primer parámetro y los parámetros restantes permanecen sin asignar.

Sintaxis:

func functionName(_parameterName1: tipo…, parámetroName2: tipo…, parámetroName3: tipo…) -> returnType{

// Cuerpo de la función

}

Ejemplo:

Swift

// Swift program to illustrate multiple variadic parameters
import Swift
  
// Creating a function with multiple variadic parameters
// Here this function find the total marks of semseter 1, 2, 3, and 4
func StudentResult(_ sem1:Int..., sem2: Int..., sem3: Int..., sem4: Int... ){
  
    var sum1 = 0
    var sum2 = 0
    var sum3 = 0
    var sum4 = 0
      
    // Finding the sum of the given marks of semester 1
    for i in sem1{
        sum1 += i
    }
    // Finding the sum of the given marks of semester 2
    for j in sem2{
        sum2 += j
    }
    // Finding the sum of the given marks of semester 3
    for k in sem3{
        sum3 += k
    }
    // Finding the sum of the given marks of semester 4
    for l in sem4{
        sum4 += l
    }
      
    // Displaying the result
    print("Total marks of semester 1: ", sum1)
    print("Total marks of semester 2: ", sum2)
    print("Total marks of semester 3: ", sum3)
    print("Total marks of semester 4: ", sum4)
}
  
// Calling function with multiple variadic parameters
// Marks of all four semesters
StudentResult(30, 45, 66, 77, 88, 66, 
              sem2: 45, 67, 34, 67, 89,54,
              sem3: 98, 87, 86, 76, 78, 71,
              sem4: 90, 80, 76, 71, 61, 52)

Producción:

Total marks of semester 1:  372
Total marks of semester 2:  356
Total marks of semester 3:  496
Total marks of semester 4:  430

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *