Może wyjaśnię Ci o co chodzi Dzakus'owi 😉
Jeżeli chodzi o pierwszy kod, w pierwszej linii tworzysz zmienną intent, której nigdy nie wykorzystujesz. Dlatego najlepiej ją usuń. Natomiast mógłbyś zrobić to też tak:
EditText editText = (EditText) findViewById(R.id.editText1);
String etxt = editText.getText().toString();
if (etxt.equals("asd")){
Intent intent = new Intent(Main.this, Main2.class);
startActivity(intent);
} else
Chodzi o to żeby zmienne miały odpowiedni 'zasięg' - może ten przykład nie do końca oddaje sens tej zasady. Utworzyleś zmienna która jest wykorzystana tylko wewnątrz ciała if{} dlatego nie powinieneś jej tworzyć nad if'em tylko w jego wnętrzu. Zaoszczędzamy w ten sposób trochę zasobów urządzenia, jak np. pamięć.
Druga moja uwaga do Toast'a. Lepiej to wygląda w ten sposób:
Toast.makeText(Main.this, "Wprowadzono błędne hasło!", 7000).show();
Nie używasz nigdy później zmiennej "info" to poco tworzyć jej instancje? Btw. 7s to strasznie długo, ale może miałeś jakiś powod żeby tyle ustawić - istnieją z góry zdefiniowane czasy toast'a: Toast.LENGTH_SHORT / Toast.LENGTH_LONG