El mejor tutorial de Rubí Rango (Rango) en 2024. En este tutorial podrás aprender A medida que el rango de la secuencia,A medida que la gama de condiciones de,Dado que la gama de intervalo,
Rango (rango) está en todas partes: de A a Z, 0 a 9, y así sucesivamente. Rubí gama de apoyo, y nos permite utilizar una gama de diferentes maneras:
La primera y más común el uso de la gama se expresa secuencias. Secuencia tiene un punto de partida y un punto final en una secuencia para producir un valor continuo.
Rubí utiliza'' es '' y '' es. ''operador de rango para crear estas secuencias. Dos formas crean un rango que contiene el valor más alto de la línea de tres puntos especificados para crear una forma que no contiene el valor máximo especificado.
(1es5) #==> 1, 2, 3, 4, 5 (1es.5) #==> 1, 2, 3, 4 ('a'es'd') #==> 'a', 'b', 'c', 'd'
1es100 secuencia es un objetoRangeque contiene dos objetosFixnum.Si es necesario, puede utilizar el método deto_arango en una lista. Prueba los siguientes ejemplos:
#!/usr/bin/ruby $, =", " # Array 值分隔符 range1 = (1es10).to_a range2 = ('bar'es'bat').to_a puts "#{range1}" puts "#{range2}"
Ejecutar la salida anterior ejemplo es:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] ["bar", "bas", "bat"]
Por lo que se puede lograr una gama de atravesar sus métodos, puede comprobar su contenido de varias maneras:
#!/usr/bin/ruby # -*- coding: UTF-8 -*- # 指定范围 digits = 0es9 puts digits.include?(5) ret = digits.min puts "最小值为 #{ret}" ret = digits.max puts "最大值为 #{ret}" ret = digits.reject {|i| i < 5 } puts "不符合条件的有 #{ret}" digits.each do |digit| puts "在循环中 #{digit}" end
Ejecutar la salida anterior ejemplo es:
true 最小值为 0 最大值为 9 不符合条件的有 [5, 6, 7, 8, 9] 在循环中 0 在循环中 1 在循环中 2 在循环中 3 在循环中 4 在循环中 5 在循环中 6 在循环中 7 在循环中 8 在循环中 9
también rangos de ser utilizado como una expresión condicional. Por ejemplo, el siguiente fragmento de código de impresión desde la línea de entrada estándar, en el que cada una de las primeras filas de la colección contiene la palabra deinicio,la última línea contiene la palabrafin .:
while gets print if /start/es/end/ end
El rango puede ser utilizado en caso de declaración:
#!/usr/bin/ruby # -*- coding: UTF-8 -*- score = 70 result = case score when 0es40 "糟糕的分数" when 41es60 "快要及格" when 61es70 "及格分数" when 71es100 "良好分数" else "错误的分数" end puts result
Ejecutar la salida anterior ejemplo es:
及格分数
Por último, un patrón de uso de detección de intervalo: Comprobar el valor especificado está dentro del rango especificado. === Es necesario utilizar el operador de igualdad para completar el cálculo.
#!/usr/bin/ruby # -*- coding: UTF-8 -*- if ((1es10) === 5) puts "5 在 (1es10)" end if (('a'es'j') === 'c') puts "c 在 ('a'es'j')" end if (('a'es'j') === 'z') puts "z 在 ('a'es'j')" end
Ejecutar la salida anterior ejemplo es:
5 在 (1es10) c 在 ('a'es'j')