English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En esta sección, les presentaremos los tipos de datos básicos de Ruby.
Los tipos de datos admitidos por Ruby incluyen los básicos Number, String, Ranges, Symbols, así como los valores especiales true, false y nil, además de dos estructuras de datos importantes: Array y Hash.
Existen dos tipos de enteros, si en31bits (cuatro bytes), que es un ejemplo de Fixnum. Si es mayor, es un ejemplo de Bignum.
El rango de enteros va desde -230 hasta 230-1en este rango, los enteros son clases Fixnum objeto, cuando el valor entero sea mayor o igual que2del3en la potencia de 0 ( -262 hasta 262-1se convertirá automáticamente al tipo Bignum.
Puede usar un símbolo de guia opcional antes de un entero, un índice base opcional (0 para octal, 0x para hexadecimal, 0b para binario), seguido de una secuencia de dígitos. Los caracteres de subrayado se ignoran en la secuencia de dígitos.
Puede obtener un valor entero de un carácter ASCII o una secuencia de escape marcada con un signo de interrogación.
123 # Fixnum Decimal 1_234 # Fixnum Decimal con subrayado -500 # Negativo Fixnum 0377 # Octal 0xff # Hexadecimal 0b1011 # Binario "a".ord # Codificación del carácter "a" ?\n # Codificación del salto de línea (0x0a) 12345678901234567890 # Número grande #Entero Integer, a continuación, algunos literals de enteros #LITERAL: todos los valores que se pueden ver en el código, números, valores bool, cadenas, etc. se llaman literals #Como el 0,1_000_000,0xa, etc. a1=0 #Entero con separador de miles a2=1_000_000 #Otras representaciones de sistemas numerarios a3=0xa puts a1,a2 puts a3 #puts print son para imprimir caracteres en la consola, donde puts devuelve un salto de línea =begin Esto es un comentario, denominado: comentario de documentación incrustado Similar a C#/**/ =end
Ruby admite números de coma flotante. Son números con decimales. Los números de coma flotante son de la clase Float de los objetos, y puede ser uno de los siguientes.
123.4 # Valor de punto flotante 1.0e6 # Notación científica 4E20 # No es necesario 4e+20 # El símbolo antes del exponente #Tipo de punto flotante f1=0.0 f2=2.1 f3=1000000.1 puts f3
Operadores de suma, resta, multiplicación y división:+-*/; el operador de exponente es**
El exponente no tiene que ser un entero, por ejemplo
#Arithmetic de exponente puts 2**(1/4)#1Con4la división es 0, luego2a la potencia 0 es1 puts 16**(1/4.0)#1Con4.0 de la división es 0.25(cuarto), luego tome la raíz cuadrada cuádruple
Ruby String, en términos simples, es una 8 La cadena de bytes, que son objetos de la clase String.
Las cadenas de bytes, que son objetos de la clase String.
#!/usr/bin/ruby -w puts 'escape usando \ puts 'Eso está bien';
Esto producirá el siguiente resultado:
escape usando \ Eso está bien
Puede usar una secuencia #{ expr } reemplazar el valor de cualquier expresión Ruby con una cadena. Aquí, expr puede ser cualquier expresión Ruby.
#!/usr/bin/ruby -w puts "multiplicar : #{24*60*60";
Esto producirá el siguiente resultado:
multiplicar : 86400
#!/usr/bin/ruby -w name="Ruby" puts name puts "#{name+",ok"}"
el resultado de la salida es:
Ruby Ruby,ok
La siguiente tabla enumera los símbolos de barra invertida soportados por Ruby:
símbolo | representa el carácter |
---|---|
\n | salto de línea (0x0a) |
\r | retorno de carro (0x0d) |
\f | página de cambio (0x0c) |
\b | tecla de retroceso (0x08) |
\a | alarma Bell (0x07) |
\e | símbolo de escape (0x1b) |
\s | espacio en blanco (0x20) |
\nnn | representación octal (n es 0-7) |
\xnn | representación hexadecimal (n es 0-9、a-f o A-F) |
\cx, \C-x | Control-x |
\M-x | Meta-x (c | 0x80) |
\M-\C-x | Meta-Control-x |
\x | carácter x |
Para obtener más detalles sobre Ruby strings, consulte Ruby string (String).
expresiones literales de array se definen entre [] con comas separadas y soportan definiciones de rango.
(1) acceder al array a través de índices []
(2) insertar, eliminar o reemplazar elementos con operaciones de asignación
(3)+merge y elimine elementos con el símbolo -, y el conjunto aparece como nuevo conjunto
(4) añadir elementos al conjunto original con el operador <<
(5)*elementos repetidos del array
(6) hacer operaciones de unión y intersección con los símbolos | y & (tenga en cuenta el orden)
#!/usr/bin/ruby ary = [ "fred", 10, 3.14, "Esto es una cadena", "último elemento", ] ary.each hacer |i| puts i end
Esto producirá el siguiente resultado:
fred 10 3.14 Esto es una cadena último elemento
Para obtener más detalles sobre Ruby arrays, consulte Ruby array (Array).
Ruby hash se coloca una serie de claves dentro de corchetes grandes/los pares de valores, clave y valor se separan por comas y la secuencia =>. La coma al final se ignora.
#!/usr/bin/ruby hsh = colors = {"rojo" => 0xf00, "verde" => 0x0f0, "azul" => 0x00f} hsh.each hacer |clave, valor| imprimir clave, "es", valor, "\n" end
Esto producirá el siguiente resultado:
rojo es 3840 verde es 240 azul es 15
Para obtener más detalles sobre el hash de Ruby, consulte Hash (Hash) de Ruby.
Un rango representa un intervalo.
El rango se representa mediante un valor de inicio y un valor de finalización. El rango se puede construir con s..e y s...e, o mediante Range.new.
El rango construido con .. se ejecuta desde el valor de inicio hasta el valor de finalización (incluso el valor de finalización). El rango construido con ... se ejecuta desde el valor de inicio hasta el valor de finalización (sin incluir el valor de finalización). Cuando se utiliza como iterador, el rango devuelve cada valor de la secuencia.
rango (1..5) significa que contiene valores 1, 2, 3, 4, 5,rango (1...5) significa que contiene valores 1, 2, 3, 4 .
#!/usr/bin/ruby (10..15).each do |n| print n, ' ' end
Esto producirá el siguiente resultado:
10 11 12 13 14 15
Para obtener más detalles sobre el rango de Ruby, consulte Rango (Range) de Ruby.