0

今、簡単なパスワードアプリを作っています。

私がVBでやったような何か。

私は自分のコードを持っています

package com.example.password;
import android.widget.*;

import com.example.password.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;

public class MainActivity extends Activity {
    Button btn1;
    EditText et1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn1 = (Button) findViewById(R.id.button1);
        et1 = (EditText) findViewById(R.id.editText1);
    btn1.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

        if ("u" == et1.getText().toString()){
            Toast.makeText(MainActivity.this, "Yay!! GOOD GUESS", Toast.LENGTH_LONG ).show();

        }

    }
    });

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; his adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

コンパイル エラーや実行時エラーは発生しませんToastが、「パスワード」が正しくてもポップアップは表示されません。

4

1 に答える 1

4

変化する

if ("u" == et1.getText().toString())

if ("u".equals(et1.getText().toString()))

あなたもできる

if (et1.getText().toString().equals("u"))

しかし、最初の方法の方が安全NPEだと思いますが、チェックすればnull問題ありません。現在行っている方法は、それらが同じオブジェクトを参照していることを確認します。.equals("string")値が等しいことのチェックを使用して、String

Java 文字列関数

于 2013-03-04T02:48:47.680 に答える