PREGUNTAS CONTESTADAS - Java

 Hay un total de 630 Preguntas.<<  >> 

    Pregunta:  58426 - VECTOR CON MAS DE UN CAMPO
Autor:  tony
Alguien me podria decir si es tan amable por favor como hago en java un vector con mas de un campo ?
lo que quiero hacer es lo siguiente
yo en pascal hacia
type cad20=String[20]
registro= record
nombre:cad20;
edad:char;
direccion:cad20;
end;
vector = array [1..20] of registro;

var vec:vector;
como puedo hacer esto mismo en java????
crear un vector con un campo en java lo se hacer, pero lo que quiero saber es como hacer un vector con mas de un campo
espero no haber cometido algun error.
  Respuesta:  Leo Lobeto
Lo equivalente a un record de pascal es una clase en Java. El código equivalente ese sería:

public class Persona {
public String nombre;
public int edad;
public String direccion;
}

Persona[] vector = new Persona[20];

Ahora, a diferencia de Pascal, los elementos del vector no están inicialiados, sino que tienen el valor null. Por lo tanto, para poner los datos de una persona en el vector (por ejemplo en la posición 5) debes hacer:

vector[5] = new Persona(); //Inicializo el elemento con una persona vacía
vector[5].nombre = "Juan"
vector[5].edad = 32;
vector[5].direccion = "Mario Bravo 221, departamento 5";

Por lo general, en Java, cada clase está en un archivo .java separado, así que el ejemplo anterior no compila si se transcribe literalmente. La clase Persona debe estar en el archivo Persona.java.

    Pregunta:  58465 - PIXELIAR IMAGENES .JPG
Autor:  Veronica Vazquez
Hola:

A mi me interesa saber como manejar y pixeliar una imagen .jpg en Java, eh buscado codigo pero aun no encuentro uno que realmente haga lo que busco que pixeliar una imagen guardarla en una matriz.

Espero que me puedan ayudar les estare agradesida.
  Respuesta:  Marcelo Agustini
Hola Veronica.
Creo que en este LINK puede estar tu respuesta:

http://www.permadi.com/tutorial/javaGetImagePixels/index.html

Bye.

    Pregunta:  58496 - EXPORTAR JSP A PDF
Autor:  Gonzalo Pino V
Hola!!!

Quisiera saber si alguno de ustedes conoce una forma sencilla de exportar una jsp o html a pdf, lo necesito para exportar unas planillas de reportes generadas en una jsp.

Agradeceria muchisimo si alguien me puede ayudar.

Saludos desde chile.

xaU =)
  Respuesta:  Mar
Hola. No sé en qué trabajas pero, has probado a utilizar la librería iText? Es para generar PDF.

Otra opción más trabajosa es que generes los listados con DisplayTag. Este componente te da exportación a PDF, XLS y RTF.

Un saludo

    Pregunta:  58800 - USO DE COMPUERTAS LOGICAS IMPLICACION Y EQUIVALENCIA
Autor:  Ana Paredes
Hola lo que pasa es que necesio saber cual es el simbolo que java utiliza en las compuertas logicas de implicacion y el de equivalencia espero me puedan ayudar
  Respuesta:  Omar Hdez
.equals() despues de la variable ponle un punto y solo te arroja las opciones

    Pregunta:  58848 - INDICES DE UN ARREGLO EN JAVA
Autor:  Yadira Gómez
Hola!!!

Tengo una duda, estoy trabajando en un generador para numeros peseudoaleatorios, en el cual introduces dos numeros con una cantidad de digitos mayor a 3, después los multiplica y te da un resultado x, ese resultado x lo guarda en mi arreglo; para general el numero pseudoaleatorio solo toma los numeros de enmedio de la cifra, pero si la cantidad de dígitos del producto guardado es impar, tengo que agregar un cero a la izquierda para que sea par y pueda sacar el numero de cuatro dígitos de enmedio.

El caso es que yo lntenté ponerle esto:

resultado[-1]=0

pero java me manda una excepcion que no se como manejar, si me pudieran ayudar por favor o decirme como puedo agregar ese cero a la izquierda de mi arreglo se los agradecería mucho, de antemano, gracias y espero sus respuestas.
  Respuesta:  Leo Lobeto
En Java solo puedes acceder a las posiciones de un arreglo comprendidas entre 0 y n-1 (ambos incluidos) suponiendo que n es el tamaño del arreglo.

tienes dos alternativas para agregar un elemento al principio del arreglo. Una forma es usar siempre el arreglo desde la posición 1 y dejar reservada la posición 0 para los casos en los cuales la cantidad de dígitos sea impar. Podrías usar una variable que te indique cual es la posición base del arreglo:

int base = 1;

... y cambiarla a 0 cuando necesitas agregar un valor al inicio.

Otra forma sería crear un método que te construya un arreglo nuevo más grande que el anterior colocando el dígito que le pases en primera posición. Algo así (no estoy seguro si compila):

public int[] agregarAlInicio(int[] arreglo, int digito) {
int[] ret = new int[arreglo.length+1];
System.arraycopy(arreglo, 0, ret, 1, arreglo.length);
ret[0] = digito;
return ret;
}

    Pregunta:  58966 - ORDENACIÓN FICHERO SECUENCIAL EN JAVA
Autor:  maria jose ramirez camarena
Hola, buenos días:
tengo un fichero java, como consecuencia de una descarga de una base de datos. Es un fichero de 1000 registros que necesito ordenarlo por un par de campos del registro.
¿Puede alguien decirme como hacerlo con instrucciones java?
Un saludo
  Respuesta:  Luciano Luis Kuhliger Bertoni
Usa el método de selección o de burbuja para ordenar los registros. En el de selección tomas el primer registro y lo comparas con todos los demás registros, si encuentras otro registro que es menor al registro que tienes, los intercambias, y éste registro que pusiste al principio, por el intercambio, lo sigues comparando con los registros que te quedan por comparar, si encuentras otro registro todavía menor, los intercambias nuevamente, y este nuevo registro que pusiste en la primera posición lo sigues comparando con todos los registros que falten, repitiendo todo el proceso de comparar e intercambiar con otros registros menores, hasta que se acabe el archivo, cuando se acaba el archivo el registro menor de todos está en la primera posición, ahora tomas el segundo registro, y lo comparas con todos los registros del archivo y si hay otro menor lo intercambia, y este nuevo registro lo comparas con todos los registros que faltan, al terminarse el archivo ya tienes el segundo registro ordenado, luego vas al tecer registro y haces los mismo, y así sigues con todos los registros hasta comparar los dos últimos registros del archivo, intercambiandolos si es necesario, entonces el archivo ya quedó ordenado. Puedes concatenar ( unir ) los dos campos que quieres para compararlos, o comparar uno y luego el otro. Cada registro tiene una posición física en el archivo por lo que guarda el byte en donde empieza el registro que vas a leer y a partir de ese byte grabas el nuevo registro. Espero que tus registros sean de la misma longitud, de no ser así tendrías que crear un archivo temporal para ir acomodando los registros.

Te mando el ejemplo con una tabla, analízalo, la lógica sería igual.

//------------- Ordena.java -----------------


public class Ordena{

public static void main(String[] argumentos){

int[] t = new int[10]; //---- crea tabla
int i,j,aux;

t[0]=6; //---- Carga datos desordenador ( se pueden pedir
t[1]=8; //---- o leer de archivo )
t[2]=4;
t[3]=9;
t[4]=1;
t[5]=3;
t[6]=7;
t[7]=2;
t[8]=8;
t[9]=5;

//---- Ordena los 10 números
for(i=0;i<9i++){
for(j=i+1;j<10j++){
if(t[i]>=t[j]){ //---- Si el primero es mayor que segundo intercambio
aux=t[i]; //---- para que el primero sea el menor
t[i]=t[j];
t[j]=aux;
} } }

//---- Imprime los 10 números
for(i=0;i<10i++){
System.out.print(" "+t[i]);
} }
}

Espero te sirva esto.

Saludos.

    Pregunta:  58995 - COMO RELACIONAR UNA CLASE EN JAVA CON COMBOBOX EN NETBEANS
Autor:  facundo pereyra
hola, estoy haciendo un programa en netbeans en la plataforma java y soy novato en esto... necesito hacer en el mainPanel de netbeas artefactos (televisor, lavarropa, etc) de los cuales hago un combobox y se despliega una lista con opciones y al hacer clik en una de estas q ejecute o llame a una clase las cuales ya las tengo echas... vuelvo a repetir solo quiero saber como generar el codigo para relacionar estas clases haciendo clik en una opcion de la lista desplegable y llamar a una clase (ej: "CambiarCanal")...

si se puede y alguien sabe me diga como se hace o mandarme algun codigo con un ejemplo parecido para guiarme... se agradece de antemano...
muchas gracias ;) !!!
  Respuesta:  Irene Garioni
Lo que se me ocurre es obtener el indice del combobox con getSelectedIndex(). Este comando te devuelve una variable entera. Con esa variable hacés un switch y según lo que se haya elegido se ejecuta un método diferente de clases diferentes.
Saludos.

    Pregunta:  59023 - INSERTAR UNA IMAGEN EN UNA ARRAY DE JLABEL
Autor:  daniel rubio
hola tengo un pequeño problema estoy creando una array de JLabel pero no me deja ponerles imajenes

delcaro la array en la clase Juego

JLabel[] dado = new JLabel[6];

y le asigno el icono y la posicion por esta otra clase Lanzamientos

int[] cordenadas = {60,100,46,48,
120,100,46,48,
180,100,46,48,
90,180,46,48,
150, 180, 46,48};
int c = 0;
for (int nd = 0 ; nd <= 5; nd++){
int i = (int)(Math.random()*6);
String d = "" + i +".JPG";
Juego.dado[nd].setIcon(new ImageIcon(d));
Juego.dado[nd].setBounds(cordenadas[c],cordenadas[c+1],cordenadas[c+2],cordenadas[c+3]);
c = c+ 4;
}

me sale el siguiente error:
Exception in thread "main" java.lang.NullPointerException
at lanzamientos.lanzaDado(lanzamientos.java:19)
la linea 19 es esta
Juego.dado[nd].setIcon(new ImageIcon(d));
ayuda por favor me estoy volviendo loco por que deveria funcionar el eclipse no me detecta ninug error
  Respuesta:  nelson E.R.
si de hecho te falta darle new a dado[i]=new jlabel();
asi ya tienes resulto tu problema

    Pregunta:  59188 - COMO CONVERTIR UNA VARIABLE DE TIPO DOUBLE A INT Y DE VICEVE
Autor:  Richy Sandoval
hola buen dia, el problema que tengo es q necesito manejar una variable de tipo double como entera, y solo se que hay q aplicar un cast, o eso m comentaron y no se como hacerlo, hay alguien que me pueda decir como se hace o d q forma se puede hacer??

ejemplo:
double x,p;
int y;

x=3.1416*p;

y= x entera

convertir x (double) a int

graxs x su ayuda!! en espera d su pronta respuesta!!
  Respuesta:  Deyris Drake Neninger
Hola,
qué sepas que cuando haces este cast, estás truncando la información porque evidentemente, un double no cabe en un int. Para hacer el cast:

Variable_entera = (int) Variable_double

Te puedes documentar en:
http://www.infor.uva.es/~jmrr/TAD2003/Sesiones/TADONJava/Tipos.html#int

También puedes truncar el valor double al que más se acerca con alguna función de la librería Math (http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Math.html) que puedes encontrar en la famosa y util API.

Suerte.

    Pregunta:  59201 - PROBLEMA CON ESPACIOS
Autor:  JESUS SANCHEZ
Hola a todos

Agradeceria mucho que me pudieran ayudar con mi problema de java, se trata de lo siguente:

Problema con linea de texto con espacios
El problema radica con la instruccion
escaner.useDelimiter(System.getProperty("line.separator"));

Segun un libro que estoy leyendo(Programacion en Java") me dice que puedo utilzarla para cambiar el delimitador de linea en dado caso que la entrada de una cadena tenga mas de una palabra, por ejemplo:

import java.util.*;
import javax.swing.*;

class PruebaNombre{
public static void main(String args[]) {
//Declarar variables
String entrada, nombre;

Scanner escaner = new Scanner(System.in);

escaner.useDelimiter(System.getProperty("line.separator"));

System.out.print("Introduzca el nombre");
nombre = escaner.next();
System.out.println("El nombre del caballo es" + nombre);
}
}
El compilador no marca ningun error, solo ke cuando lo corro el programa no hace nada, ahora si yo kito esa linea y corro el programa si introduzco de nombre "Juan Perez" solo me toma la primera palabra, es decir "Juan"; No se si me puedan ayudar o me puedan decir alguna otra funcion para poder leer una cadena de texto con espacios

Gracias por su atencion
  Respuesta:  Anonimouse
de esta forma puede leer tambien cosas del teclado

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String texto = br.readLine();

|<  <<  51 52 53 54 55 56 57 58 59 60 61  >>  >|