Herramientas de usuario

Herramientas del sitio


es:manual:items:generativos:siette.util.random

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
es:manual:items:generativos:siette.util.random [2021/05/22 11:12] rootes:manual:items:generativos:siette.util.random [2021/05/24 16:50] (actual) root
Línea 4: Línea 4:
 Esta clase tiene los siguientes métdos públicos: Esta clase tiene los siguientes métdos públicos:
  
-=== Constructor ===+==== Constructor ====
  
 <code java> <code java>
Línea 12: Línea 12:
 Crea un objeto, en general no es necesario crear el objeto, ya que Siette lo crea internamente y en el código de las preguntas se utilizan métodos //estaticos//. Este método sirve simplemente para devolver una referencia al objeto principal, y para que la programación sea similar a la clase ''java.util.Random''. Crea un objeto, en general no es necesario crear el objeto, ya que Siette lo crea internamente y en el código de las preguntas se utilizan métodos //estaticos//. Este método sirve simplemente para devolver una referencia al objeto principal, y para que la programación sea similar a la clase ''java.util.Random''.
  
-=== Semilla ===+==== Semilla ====
  
 <code java> <code java>
Línea 21: Línea 21:
 Escribe o lee la semilla del objeto ''Random''. En general no es necesario utilizar este método, y esta desaconsejando variar la semilla, ya que esto haría que la pregunta no pudiera reproducirse exactamente como se planteo. Son métodos usados por el sistema. Escribe o lee la semilla del objeto ''Random''. En general no es necesario utilizar este método, y esta desaconsejando variar la semilla, ya que esto haría que la pregunta no pudiera reproducirse exactamente como se planteo. Son métodos usados por el sistema.
  
-=== boolean ===+==== boolean ====
  
 <code java> <code java>
Línea 29: Línea 29:
 Devuelve un valor logico aleatoriamente (''true'' o ''false'') Devuelve un valor logico aleatoriamente (''true'' o ''false'')
  
-=== double ===+==== double ====
  
 <code java> <code java>
Línea 71: Línea 71:
    
  
-=== float ===+==== float ====
  
 <code java> <code java>
Línea 83: Línea 83:
 Son métodos similares a ''nextDouble'', pero devolviendo un número de tipo ''float''. Son métodos similares a ''nextDouble'', pero devolviendo un número de tipo ''float''.
  
-=== int ===+==== int ====
  
 <code java> <code java>
Línea 98: Línea 98:
  
  
-=== long ===+==== long ====
  
 <code java> <code java>
Línea 109: Línea 109:
 </code> </code>
  
-Son métodos similares a ''nextInt'' pero que devuelven números de tipo ''long'' entre $-2^{63}$ y $2^{63}$ con una distribución uniforme. ((Segun la documentación de java, la funcion no devuelve todos los posibles valores de tipo ''long'', ya que la semilla se limia a 48 bits.))+Son métodos similares a ''nextInt'' pero que devuelven números de tipo ''long'' entre $-2^{63}$ y $2^{63}$ con una distribución uniforme. ((Segun la documentación de java, la funcion no devuelve todos los posibles valores de tipo ''long'', ya que la semilla está limitada a 48 bits.))
  
-=== format ===+==== format ====
  
 <code java> <code java>
 public static String format(double value, String format) public static String format(double value, String format)
 +public static String format(float value, String format)
 +public static String format(long value, String format)
 +public static String format(int value, String format)
 public static String format10(double value, String format) public static String format10(double value, String format)
 </code> </code>
Línea 120: Línea 123:
 La función ''format'' llama a la clase [[https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html|java.text.DecimalFormat]] para construir una representación del número ''value'' que se le pasa como argumento. La función ''format'' llama a la clase [[https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html|java.text.DecimalFormat]] para construir una representación del número ''value'' que se le pasa como argumento.
  
-La función ''format'' crea una represenación en HTML equivalente a la notación cientifica. El atributo ''format'' se aplica solo a la mantisa. Por ejemplo el número la instruccion:+La función ''format10'' crea una represenación en HTML equivalente a la notación cientifica. El atributo ''format'' se aplica solo a la mantisa. Por ejemplo el número la instruccion:
  
-   String st = format10(299792, "#.#");+   String st = Random.format10(299792, "#");
  
 da como resultado  da como resultado 
Línea 130: Línea 133:
 que en HTML se muestra como: <html>3 x 10<sup>5</sup></html> que en HTML se muestra como: <html>3 x 10<sup>5</sup></html>
  
 +==== select ====
 +
 +<code java>
 +public static Object select(List list)
 +public static Object select(Set set)
 +public static Object select(Object[] obj)
 +public static String select(String[] obj)
 +public static double select(double[] obj)
 +public static float select(float[] obj)
 +public static long select(long[] obj)
 +public static int select(int[] obj)
 +</code>
 +
 +Las funciones ''select'' sirven para seleccionar un objeto al azar a partir de una colección de objetos, ya sea una lista, un conjunto o un array de elementos. Por ejemplo:
 +
 +   String color = Random.select(new String[] {"rojo","azul","verde","amarillo"});
 +   
 +selecciona aletoriamente una cadena de caracteres que representa uno de estos cuatro colores.
 +
 +==== Barajar y permutar ====
 +<code java>
 +public static List shuffle(List list)
 +public static Object[] shuffle(Object[] obj)
 +public static String[] shuffle(String[] obj)
 +public static double[] shuffle(double[] obj)
 +public static float[] shuffle(float[] obj)
 +public static long[] shuffle(long[] obj)
 +public static int[] shuffle(int[] obj)
 +</code>
 +
 +Estas funciones devuelven un objeto igaul que el que reciben pero con los elementos en un orden aleatorio Por ejemplo, la isntruccion:
 +
 +    int nums = {0,1,2,3,4,5,6,7,8,9}
 +    nums  = Random.shuffle(nums);
 +
 +hace que el valor de la variable ''nums'' cambie a:
 +
 +    4,6,2,7,8,3,0,9,1,5
 +
 +<code java>
 +public static int[] permutation(int n)
 +</code>
 +
 +La funcion''permutacion'' hace exactamente lo mismo que barajar en el ejemplo anterior, pero solo hay que indicarle el numero de valores enteros que se desea permutar. Es decir, para obtener el mismo resultado que el ejemplo anterior bastaria con utilizar la llamada a la funcion:
 +
 +    int nums = Random.permutacion(9);
 +
 +
 +==== Otras funciones ====
 +
 +<code java>
 +public static String code(int n)
 +</code>
 +Devuelve un array de //n// caracteres aleatorio.    
 +
 +<code java>
 +public static Object[] toObjectArray(List list)
 +</code>
 +
 +Transforma una lista en un array de objetos.   
 +
 +<code java>
 +public static List toList(Object[] list)
 +</code>
 +
 +Transforma un array de objetos en una lista de objetos.  
es/manual/items/generativos/siette.util.random.1621681937.txt.gz · Última modificación: 2021/05/22 11:12 por root

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki