2012-05-15 7 views
2

Сравнение строк не работает. Я не знаю почему. Она возвращает, что он всегда равен даже тогда, когда эти две строки не совпадаютСравнение строк не работает (android)

здесь код Im используя

if(videoFile.equals(LangSelect.INSTRUCTION_01)); 
    { 
     Log.i("InstructionVideo", "video and instruction are equal\n"+ videoFile + "\n" + LangSelect.INSTRUCTION_01); 

     //hideBackButton(); 
    } 

видеофайле является intro_x.mp4, где х меняется на число от 0 до 4, а INSTRUCTION_01 является into_0.mp4

части моего OnCreate, что делает наборы видеофайл переменной

//get which video file to play 
    videoFile = getIntent().getExtras().getString("PlayVideo"); 

    Log.i("InstructionVideo", "videoFile name: " +videoFile); 

Вот LogCat той части

05-15 14:59:57.078: I/InstructionVideo(2952): videoFile name: intro_0.mp4 
05-15 14:59:57.085: I/InstructionVideo(2952): video and instruction are equal 
05-15 14:59:57.085: I/InstructionVideo(2952): intro_0.mp4 
05-15 14:59:57.085: I/InstructionVideo(2952): intro_0.mp4 
05-15 14:59:57.124: I/surfaceCreated(2952): created 
05-15 14:59:58.324: I/LangSelect(2952): 7 
05-15 14:59:58.390: I/InstructionVideo(2952): videoFile name: intro_1.mp4 
05-15 14:59:58.390: I/InstructionVideo(2952): video and instruction are equal 
05-15 14:59:58.390: I/InstructionVideo(2952): intro_1.mp4 
05-15 14:59:58.390: I/InstructionVideo(2952): intro_0.mp4 
05-15 14:59:58.433: I/surfaceCreated(2952): created 
05-15 14:59:58.484: I/SurfaceDestroyed(2952): destroyed 
05-15 15:00:07.382: I/LangSelect(2952): 7 
05-15 15:00:07.445: I/InstructionVideo(2952): videoFile name: intro_2.mp4 
05-15 15:00:07.449: I/InstructionVideo(2952): video and instruction are equal 
05-15 15:00:07.449: I/InstructionVideo(2952): intro_2.mp4 
05-15 15:00:07.449: I/InstructionVideo(2952): intro_0.mp4 
05-15 15:00:07.488: I/surfaceCreated(2952): created 
05-15 15:00:07.539: I/SurfaceDestroyed(2952): destroyed 
05-15 15:00:23.535: I/LangSelect(2952): 7 
05-15 15:00:23.597: I/InstructionVideo(2952): videoFile name: intro_3.mp4 
05-15 15:00:23.597: I/InstructionVideo(2952): video and instruction are equal 
05-15 15:00:23.597: I/InstructionVideo(2952): intro_3.mp4 
05-15 15:00:23.597: I/InstructionVideo(2952): intro_0.mp4 
05-15 15:00:23.632: I/surfaceCreated(2952): created 
05-15 15:00:23.687: I/SurfaceDestroyed(2952): destroyed 
05-15 15:00:38.843: I/LangSelect(2952): 7 
05-15 15:00:38.902: I/InstructionVideo(2952): videoFile name: intro_4.mp4 
05-15 15:00:38.906: I/InstructionVideo(2952): video and instruction are equal 
05-15 15:00:38.906: I/InstructionVideo(2952): intro_4.mp4 
05-15 15:00:38.906: I/InstructionVideo(2952): intro_0.mp4 
05-15 15:00:38.941: I/surfaceCreated(2952): created 
05-15 15:00:38.992: I/SurfaceDestroyed(2952): destroyed 
05-15 15:01:13.242: I/LangSelect(2952): 7 
05-15 15:01:13.296: I/SurfaceDestroyed(2952): destroyed 

Это показывает, что даже я сравнить их, они возвращают так, но не

+0

Всегда ли это результат «истина»? –

+0

Да всегда приводит к истине. Я использовал compareTo, ==, даже содержит все возвращаемые значения, которые они верны – Raigex

+0

Вы уверены, что это меняется? Строки неизменны в Java. Как вы генерируете эти строки? –

ответ

9

Там в ; в конце «если» линия, которая заканчивается «если» заявление, поэтому следующий блок всегда выполняется.

+0

Забавно, как вы не видите то, что не ищете - я пропустил его, перечеркнув вопрос. –

+0

Lol Я не видел ни – SpeedBirdNine

+0

@ Jonathon Ты говоришь мне. Я сидел на нем примерно 30 минут, и он продолжал терпеть неудачу. – Raigex

Смежные вопросы