elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Error metodo main
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error metodo main  (Leído 2,949 veces)
SeñorX95

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Error metodo main
« en: 13 Marzo 2015, 20:33 pm »

He hecho el metodo main pero al devolver un valor devulevo la referencia en vez de la cadena de caracteres que tengo mal?

Código
  1. public static void main(String[] arg){
  2.       Scanner entrada=new Scanner(System.in);
  3.       double peso;
  4.       Recurso u=new Recurso();
  5.       String url;
  6.       System.out.println("Introduce el url");
  7.       url=entrada.nextLine();
  8.       if(url.equals("")){
  9.           System.out.println("Ha decidido salir");
  10.       }else{
  11.           System.out.println("Introduce el peso");
  12.           peso=entrada.nextInt();
  13.           if(u.verProtocolo()){
  14.               System.out.println("El url si tiene protocolo http");
  15.           }else {
  16.               System.out.println("El url no tiene protocolo http");
  17.           }
  18.  
  19.           System.out.println("La clave que se asigna a esta url es: "+u.calcularClave());
  20.  
  21.       }
  22.  
  23.  
  24.  
  25.  
  26.    }


« Última modificación: 13 Marzo 2015, 20:40 pm por SeñorX95 » En línea

SeñorX95

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Java
« Respuesta #1 en: 13 Marzo 2015, 20:34 pm »

En el metodo calcularClave () del final


En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Error metodo main
« Respuesta #2 en: 13 Marzo 2015, 20:42 pm »

Vamos tío, si no pones el contenido de dicho método, ¿cómo esperas que te ayuden?
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
SeñorX95

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Error metodo main
« Respuesta #3 en: 13 Marzo 2015, 20:49 pm »

Código
  1. public char[] calcularClave(){
  2.        String s,n,a;
  3.        String[] servidor = url.split("/");
  4.        s=servidor[2];
  5.        String[] nombre = url.split("/");
  6.        n=nombre[6];
  7.        int resultado;
  8.        int total;
  9.        int suma=0;
  10.        int suma2=0;
  11.        String letras="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
  12.  
  13.        for (int i=0; i<s.length();i++) {
  14.            char n1;
  15.            n1=s.charAt(i);
  16.  
  17.            boolean x=false;
  18.            if(n1>'0' && n1<'9'){
  19.                suma+=Integer.parseInt(""+n1);
  20.            }else{
  21.                if((n1<'a' || n1>'z') && (n1<'A' || n1>'Z')){
  22.                    suma+=10;
  23.                }else{
  24.                    for(int j=0;x==false;){
  25.                        char n2;
  26.                        n2=letras.charAt(j);
  27.                        if(n1!=n2){
  28.                            j++;
  29.                        }else{
  30.                            x=true;
  31.                            suma+=(j+1);
  32.                        }
  33.                    }
  34.                }
  35.            }
  36.        }
  37.  
  38.        for (int i=0; i<n.length();i++) {
  39.            char n1;
  40.            n1=n.charAt(i);
  41.            boolean x=false;
  42.            if(n1>'0' && n1<'9'){
  43.                suma2+=Integer.parseInt(""+n1);
  44.            }else{
  45.                if((n1<'a' || n1>'z') && (n1<'A' || n1>'Z')){
  46.                    suma2+=10;
  47.                }else{
  48.                    for(int j=0;x==false;){
  49.                        char n2;
  50.                        n2=letras.charAt(j);
  51.                        if(n1!=n2){
  52.                            j++;
  53.                        }else{
  54.                            x=true;
  55.                            suma2+=(j+1);
  56.                        }
  57.                    }
  58.                }
  59.            }
  60.        }
  61.        total=suma+suma2;
  62.        resultado=total/n.length();
  63.        String a1,a2,a3;
  64.        a1=url.substring(url.indexOf("//")+2);
  65.        a2=a1.substring(a1.indexOf("/")+1);
  66.        a3=a2.substring(0,resultado);
  67.        char clave[] = a3.toCharArray();
  68.        return clave;
  69.    }
En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Error metodo main
« Respuesta #4 en: 13 Marzo 2015, 21:01 pm »

Te daré algunos consejos:

1) Utiliza nombres descriptivos a las variables.
2) Modulariza código. Ese proceso largo lo puedes hacer en varios pequeños.

Si no sigues éstos dos simples consejos, tu código se convertirá en una completa mezcla de palabras sin sentido. Es de vital importancia que sigas esos principios desde ahora.

Respecto a tu pregunta, te imprime la referencia del array. Lo que tienes que hacer es recorrer el array de vuelto en un for e ir imprimiendo carácter por carácter.

Código
  1. for(char c : u.calcularClave())
  2.    System.out.print(c);
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
SeñorX95

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Error metodo main
« Respuesta #5 en: 13 Marzo 2015, 21:08 pm »

Y para sacar los carecteres juntos?
En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Error metodo main
« Respuesta #6 en: 13 Marzo 2015, 21:14 pm »

Para eso puedes concatenar los caracteres así:

Código
  1. String key = "";
  2. for(char c : u.calcularClave())
  3.    key += c;
  4. System.out.println("La clave es: "+key);

Saludos.
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
SeñorX95

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Error metodo main
« Respuesta #7 en: 13 Marzo 2015, 21:20 pm »

Gracias tio eres un maquina!  ;D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
acceder desde el main a un metodo de otra clase
Java
alzehimer_cerebral 6 8,857 Último mensaje 5 Octubre 2009, 18:22 pm
por alzehimer_cerebral
Ayuda error en el main de Java
Java
patxiku10 2 4,413 Último mensaje 28 Abril 2012, 04:16 am
por sapito169
[cagada]: gcc main.c -o main.c. posibilidad de recuperar codigo fuente??
Programación C/C++
xiruko 5 4,730 Último mensaje 3 Agosto 2012, 06:29 am
por xiruko
Error en main nullpointer
Java
noob2012 2 2,190 Último mensaje 17 Diciembre 2014, 23:06 pm
por noob2012
Pasar un arreglo desde el main a un metodo en una clase « 1 2 »
Programación General
rgomez9119 15 10,550 Último mensaje 4 Noviembre 2016, 15:57 pm
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines