Java - problemas con substring

 
Vista:
sin imagen de perfil
Val: 89
Ha disminuido su posición en 3 puestos en Java (en relación al último mes)
Gráfica de Java

problemas con substring

Publicado por jose maria (85 intervenciones) el 30/05/2016 11:58:01
hola, soy nuevo y funciono con bluej....
estoy intentando hacer una comparación entre partes de dos cadenas, osea, tengo una ya inicializada con un valor fijado, luego pregunto una segunda cadena y una posición, y miro, si la letra en esa posición coinciden en las cadenas....
parte del código es este:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class Datos
{
   .....
   private String datosecreto;
 
   public Datos (.......)
   {
      .......
       datosecreto="jose";
      ........
   }
 
public void comparacion (String palabra, int posicion)
   {
       if(palabra.substring(posicion-1,posicion-1)==datosecreto.substring(posicion-1,posicion-1))
       {
           System.out.println("Hay coincidencia en la "+posicion+" letra de la palabra");
           System.out.println("Palabra ingresada: "+palabra);
           System.out.print ("Palabra con la que se compara: "+datosecreto);
       }
       else
       {
           System.out.println ("No hay coincidencia en la "+posicion+" letra de la palabra");
           System.out.println("Palabra ingresada: "+palabra);
           System.out.print ("Palabra con la que se compara: "+datosecreto);
       }
   }

El problema que ocurre es que aunque palabra= "jose" me da como que no es igual...., vamos, se ejecuta el else....
otra cosa que pasa es que al presentar en pantalla los datos, la primera linea sale a continuación de la ultima
¿como corrijo eso? no me había fijado nunca que ocurriera eso....
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

problemas con substring

Publicado por Kebo (15 intervenciones) el 01/06/2016 12:22:48
prueba con esto --> palabra.substring(posicion-1, posicion)

ya que en substring el primer parametro en la posicion inicial que es inclusivo, pero la posicion final es exclusiva.

es decir, si le pasas un 1 en la posicion, sería: substring(0,1) lo que te cogería la primera posición de la cadena. Si es un 2: substring(1,2) y te cogería la segunda posición y así sucesivamente.

Espero que esto te ayude.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar