Latest web development tutorials

tipo de datos de Ruby

En este capítulo vamos a introducir tipos de datos básicos de Ruby.

Rubí Tipos de datos numéricos básicos incluyen, cuerdas, cocinas, símbolos, y verdadero, falso, y nil estos valores especiales, así como dos estructuras de datos importantes --Array y Hash.


Tipo de valor (número)

1, Integer (entero)

Entero dos, si 31 o menos (cuatro bytes), es ejemplo Fixnum. Si es así, es ejemplo Bignum.

gama de enteros de -2 o -2 30-2 30-1 62-2 62-1. Entero en esta gama es la claseFixnumnúmero entero objeto almacenado fuera del alcance de esta clase de objetosbignum.

Se puede utilizar un símbolo de preámbulo opcional frente a un número entero, un indicador base opcional (0 para octal, hexadecimal 0x corresponden, 0b correspondiente a binario), seguido de una serie de números. carácter de subrayado cadena numérica se ignoran.

Usted puede obtener un carácter ASCII o una secuencia de escape valor entero con signos de interrogación.

Ejemplos

123                  # Fixnum 十进制
1_234                # Fixnum 带有下划线的十进制
-500                 # 负的 Fixnum
0377                 # 八进制
0xff                 # 十六进制
0b1011               # 二进制
"a".ord              # "a" 的字符编码
?\n                  # 换行符(0x0a)的编码
12345678901234567890 # Bignum
#整型 Integer 以下是一些整型字面量 
#字面量(literal):代码中能见到的值,数值,bool值,字符串等都叫字面量 
#如以下的0,1_000_000,0xa等 
a1=0 

#带千分符的整型 
a2=1_000_000 

#其它进制的表示 
a3=0xa 
puts a1,a2 
puts a3 

#puts print 都是向控制台打印字符,其中puts带回车换行符 
=begin 
这是注释,称作:嵌入式文档注释 
类似C#中的/**/ 
=end 

flotador

Rubí apoyo de coma flotante. Son números con decimales.FloatFloat es una clase de objetos, y puede ser cualquiera de los siguientes.

Ejemplos

123.4                # 浮点值
1.0e6                # 科学记数法
4E20                 # 不是必需的
4e+20                # 指数前的符号
#浮点型 
f1=0.0 
f2=2.1 
f3=1000000.1 
puts f3  

operación aritmética

Los operadores aritméticos: + - * /; operario ** Índice

Índice no tiene que ser un número entero, por ejemplo,

#指数算术 
puts 2**(1/4)#1与4的商为0,然后2的0次方为1 
puts 16**(1/4.0)#1与4.0的商为0.25(四分之一),然后开四次方根 

tipo de cadena

cadena rubí es simplemente una secuencia de bytes de 8 bits, que es el objeto de la clase String.

Cadena de signos y barras invertidas comillas dobles permiten cadenas de reemplazo no pueden reemplazar las comillas simples, y sólo permite el uso de \\ y \ 'dos ​​barra invertida.

Ejemplos

Ejemplos

#! / Usr / bin / ruby-w

puts 'escapar utilizando "\\"';
pone 'Eso \' s derecho ';

Instancia en ejecución »

Esto produce los siguientes resultados:

escape using "\"
That's right

Puede secuenciar# {expr} se reemplaza por una cadena de Rubí usan expresiones arbitrarias.En este caso, expr puede ser cualquier expresión Ruby.

#! / Usr / bin / ruby-w

pone "Multiplicación Valor: # {24 * 60 * 60}";

Esto produce los siguientes resultados:

Valor Multiplicación: 86400
#!/usr/bin/ruby -w

name="Ruby" 
puts name 
puts "#{name+",ok"}" 

La salida es:

Ruby
Ruby,ok

barra invertida

La siguiente tabla muestra la barra invertida Rubí apoyado:

符号表示的字符
\n换行符 (0x0a)
\r回车符 (0x0d)
\f换页符 (0x0c)
\b退格键 (0x08)
\a报警符 Bell (0x07)
\e转义符 (0x1b)
\s空格符 (0x20)
\nnn八进制表示法 (n 是 0-7)
\xnn十六进制表示法 (n 是 0-9、a-f 或 A-F)
\cx, \C-xControl-x
\M-xMeta-x (c | 0x80)
\M-\C-xMeta-Control-x
\x字符 x

Para más detalles sobre cadenas de Ruby, ver el Rubí String (cadena) .

formación

Literal de matriz por [] para definir un separados por comas, y de apoyo definiciones de rango.

  • (1) a través de la matriz [] Acceso índice
  • (2) por asignación a insertar, eliminar, sustituir el elemento
  • (3) + - Nº de combinación y eliminar elementos, y la colección como aparece una nueva colección
  • (4) por elementos de datos adicionales resolución original <<
  • (5) mediante la repetición de número de elemento de matriz *
  • (6) | y el signo hacer operaciones de unión e intersección (tenga en cuenta el orden)

Ejemplo:

Ejemplos

#! / Usr / bin / ruby
ary = [ "Fred", 10, 3.14, "Esto es una cadena", "último elemento",]
ary.each hacer | i |
pone i
final

Instancia en ejecución »

Esto produce los siguientes resultados:

Fred
10
3.14
Esta es una cadena
último elemento

Para más detalles sobre la matriz de Ruby, consulte la matriz de Ruby (la matriz) .

Tipo de hash

Rubí hash se coloca entre llaves serie de pares clave / valor, utilice comas entre las claves y valores y la secuencia => separación. coma final se ignora.

Ejemplos

Ejemplos

#! / Usr / bin / ruby

HSH = = {colores "rojo" => 0xf00, "verde" => 0x0f0, "azul" => 0x00f}
hsh.each hacer | clave, valor |
tecla de impresión, "es", valor, "\ n"
final

Instancia en ejecución »

Esto produce los siguientes resultados:

red is 3840
green is 240
blue is 15

Para más detalles sobre el hash Ruby, ver el hash de Rubí (Hash) .

Tipo rango

Una gama representa un rango.

El rango es de un valor inicial y un valor final mediante el establecimiento de representar. La gama de s..e y s utilizable ... e de construir, o por Range.new construido.

Obra realizada con .. correr a partir del valor inicial gama de poner fin a valor (incluyendo los valores extremos). ... Construidos con un rango de ejecución del valor de arranque para poner fin a valor (valor final no está incluido). Cuando se utiliza como un iterador utilizar la gama volverá cada valor en la secuencia.

Rango (1..5) significa que contiene un valor de 1, 2, 3, 4, 5, la gama (1 ... 5) significa que contiene el valor 1, 2, 3, 4.

Ejemplos

Ejemplos

#! / Usr / bin / ruby

(10..15) .Cada hacer | n |
print n, ''
final

Instancia en ejecución »

Esto produce los siguientes resultados:

10 11 12 13 14 15

Para más detalles acerca de la gama de rubíes, consulte la cordillera de Ruby (el rango) .