Wpis z mikrobloga

#java #programowanie

Dobrze zamieniłem ify na switch casy? W komentarzu nowy kod.. (kompiluje się prawidłowo,ale nie jestem w stanie ocenić czy działa prawidłowo.

@Override
public void onSensorChanged(SensorEvent event) {
Sensor sensor = event.sensor;

if (sensor.getType() == Sensor.TYPEACCELEROMETER) {
akc
x.add(event.values[0]);
akcy.add(event.values[1]);
akc
z.add(event.values[2]);

} else if(sensor.getType() == Sensor.TYPEGYROSCOPE) {
gyro
x.add(event.values[0]);
gyroy.add(event.values[1]);
gyro
z.add(event.values[2]);

} else {
liniowyx.add(event.values[0]);
liniowy
y.add(event.values[1]);
liniowy_z.add(event.values[2]);
}

predictActivity();
}
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@yras8: nie potrzebujesz klamr, klamer, klamrów - whatever; po prostu pamiętaj o tym, żeby przed każdym casem (i na koniec poprzedniego) dać break. Bo Ci poleci od pierwszego znalezionego case, aż w dół do klamry - łącznie z innymi case-ami. Albo do pierwszego znalezionego break właśnie
  • Odpowiedz
@RRybak: czekaj jak przed każdym? ja po prostu jestem nauczony,że daje się go w każdym casie na koniec,tak jak zrobiłem wyżej,tak jest okej czy nie?
  • Odpowiedz
@yras8: to było uproszczenie, na koniec każdego bloku, czyli przed każdym kolejnym - to to samo. Nie musisz go dawać po ostatnim, bo tam nie ma żadnego innego poniżej. Tak jak dałeś jest dobrze, ale klamry niepotrzebne (ale też nie są złe)
  • Odpowiedz
@yras8: jak nie dasz po każdym, to jeśli trafi na pierwszy przypadek to zacznie robić wszystkie dopóki nie trafi na break (zacznie pomijać to co ma w warunkach).
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@yras8:

kompiluje się prawidłowo,ale nie jestem w stanie ocenić czy działa prawidłowo.

No to masz świetną okazję żeby zająć się testami jednostkowymi
  • Odpowiedz