Advertisement
jsbsan

listas en gambas: variant[]

Jun 14th, 2013
652
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
GAMBAS 3.95 KB | None | 0 0
  1. ' Gambas class file
  2.  
  3. ''Enlace a la documentacion oficial...http://gambasdoc.org/help/comp/gb/variant[]?es&v3
  4.  
  5. Public Sub _new()
  6.  
  7. End
  8.  
  9. Public Sub Form_Open()
  10.  
  11. Dim valor As Variant
  12.  
  13. 'Creación de una lista en el momento de la definición
  14.  
  15. Dim semestre As Variant[] = ["enero", "febrero", "Marzo", "Abril", "Mayo", "junio"]
  16.  
  17. Dim notas As Variant[] = [5.4, 6.2, 3.3, 4.0, 8.3]
  18.  
  19. Dim lista As Variant[] = [123, 234, "hola"] 'lista con varios tipos de datos
  20.  
  21. Dim lista2 As Variant[]
  22.  
  23.  
  24.  
  25. 'mostrando contenido de una lista
  26.  
  27. For Each valor In semestre
  28.  
  29. Print valor
  30.  
  31. Next
  32.  
  33. For Each valor In notas
  34.  
  35. Print valor
  36.  
  37. Next
  38.  
  39. For Each valor In lista
  40.  
  41. Print valor
  42.  
  43. Next
  44.  
  45.  
  46.  
  47. 'Añadir elementos...
  48.  
  49. lista.Add("adios")
  50.  
  51. lista.Add(23.45)
  52.  
  53. Print "Añadiendo elementos.."
  54.  
  55. For Each valor In lista
  56.  
  57. Print valor
  58.  
  59. Next
  60.  
  61.  
  62.  
  63. 'Acceso a los elementos:
  64.  
  65. Print "acceso al elemento nº 2 de la lista:"
  66.  
  67. Print lista[1] 'recordemos que los arrays siempre empiezan por el elmento 0
  68.  
  69.  
  70.  
  71. 'Conocer el tamaño de la lista
  72.  
  73. Print "Numero de elementos:"
  74.  
  75. Print lista.Count
  76.  
  77.  
  78.  
  79. 'Cambiar valores
  80.  
  81. lista[2] = "bye" 'cambio el valor
  82.  
  83. Print lista[2]
  84.  
  85. lista[1] += 1000 'añado al valor que tenia
  86.  
  87. Print lista[1]
  88.  
  89.  
  90.  
  91. 'Eliminar un elemento..
  92.  
  93. Print "Borrado de elementos:"
  94.  
  95. lista.Delete(2) 'fijaros que se indica entre parentesis, ya que es un método
  96.  
  97. For Each valor In lista
  98.  
  99. Print valor
  100.  
  101. Next
  102.  
  103.  
  104.  
  105. 'Borrado de varios elementos
  106.  
  107. lista.Delete(1, 2) 'borra desde el elmento 2, dos elementos más
  108.  
  109. Print "Borrado de varios elementos:"
  110.  
  111. For Each valor In lista
  112.  
  113. Print valor
  114.  
  115. Next
  116.  
  117.  
  118.  
  119. 'Funcion pop(): extrae y borra el ultimo elemento
  120.  
  121. Print "Elemento que elimino:", lista.Pop()
  122.  
  123. For Each valor In lista
  124.  
  125. Print valor
  126.  
  127. Next
  128.  
  129.  
  130.  
  131. 'Funcion pup(): añade un nuevo elemento al final de la lista...
  132.  
  133. lista.Push("hello!!")
  134.  
  135. For Each valor In lista
  136.  
  137. Print valor
  138.  
  139. Next
  140.  
  141.  
  142.  
  143. 'Insertar listas en listas:
  144.  
  145. Print "Insertar una lista en otra lista..."
  146.  
  147. lista.Insert(semestre, 1) 'inserto una lista "semeste" en la posicion 2 de la lista
  148.  
  149. For Each valor In lista
  150.  
  151. Print valor
  152.  
  153. Next
  154.  
  155.  
  156.  
  157. 'Invertir los elementos de la lista
  158.  
  159. Print "Creando lista invertida:"
  160.  
  161. lista2 = lista.Reverse()
  162.  
  163. For Each valor In lista2
  164.  
  165. Print valor
  166.  
  167. Next
  168.  
  169.  
  170.  
  171. 'Método: Find: Buscar si existe un elemento en una lista,devolviendo el indice donde esta
  172.  
  173. Print "Buscando febrero en la lista:"
  174.  
  175. Print lista.Find("febrero") '"febrero" esta en la lista, devuelve el indice donde esta..
  176.  
  177. Print "buscando diciembre en la lista:"
  178.  
  179. Print lista.Find("diciembre") ' "diciembre" no esta en la lista, devuelve -1
  180.  
  181.  
  182.  
  183. 'Método exist: indica si esta un elemento (True: para si esta, False: si no esta)
  184.  
  185. Print "¿esta mayo en la lista?", lista.Exist("Mayo")
  186.  
  187.  
  188.  
  189. ' Los valores de una lista pueden ser también objetos e incluso otras listas (anidamiento).
  190.  
  191. lista.add(notas) 'añado la referencia de la variable notas
  192.  
  193. ' (vease la diferencia con poner lista.insert(notas), que añade los elementos)
  194.  
  195. For Each valor In lista
  196.  
  197. Print valor
  198.  
  199. Next
  200.  
  201.  
  202.  
  203.  
  204.  
  205. 'La lista anidada es una referencia, por lo que un cambio en la lista original afectará también a la referencia:
  206.  
  207. notas[1] = "muy buenas"
  208.  
  209. For Each valor In lista
  210.  
  211. Print valor
  212.  
  213. Next
  214.  
  215. Print Lista[8][1]
  216.  
  217.  
  218.  
  219.  
  220.  
  221. Acceso a un elemento dentro de unal lista anidada:
  222.  
  223. Print "Acceso al primer elemento dentro de una lista anidada: ", lista[8][0], lista[8][1]
  224.  
  225. 'Borrado de varios elementos de una lista
  226.  
  227. lista.Remove(1, 3)
  228.  
  229. 'Borra y devuelve varios elemento de una lsita
  230.  
  231. lista.Delete(1, 2)
  232.  
  233. 'Copia desde el indice indicado (2) hasta el nº de elemntos (4)
  234.  
  235. Print "Lista2 copiada:"
  236.  
  237. lista2 = lista.Copy(2, 2)
  238.  
  239. For Each valor In lista2
  240.  
  241. Print valor
  242.  
  243. Next
  244.  
  245. 'Rellena una lista con elementos
  246.  
  247. Print "Relleno lista...con el valor aa, desde el indice 0, 2 veces"
  248.  
  249. lista2.Fill("aa", 0, 2)
  250.  
  251. For Each valor In lista2
  252.  
  253. Print valor
  254.  
  255. Next
  256.  
  257. 'Borrar una lista
  258.  
  259. lista.Clear()
  260.  
  261. End
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement