Сравнение строк не работает. Я не знаю почему. Она возвращает, что он всегда равен даже тогда, когда эти две строки не совпадаютСравнение строк не работает (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
Это показывает, что даже я сравнить их, они возвращают так, но не
Всегда ли это результат «истина»? –
Да всегда приводит к истине. Я использовал compareTo, ==, даже содержит все возвращаемые значения, которые они верны – Raigex
Вы уверены, что это меняется? Строки неизменны в Java. Как вы генерируете эти строки? –