Java Android初始化数组问题

Java Android初始化数组问题,java,android,arrays,Java,Android,Arrays,我一直在寻找下面的代码有什么问题 下面是MainActivity.java package com.andri.hilltest; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; impo

我一直在寻找下面的代码有什么问题

下面是MainActivity.java

package com.andri.hilltest;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener {

    EditText txtPlain, txtKey, txtCipher;
    Button btnEncrypt;
    String char_db = "ABCDEFGHIJKLMNOPQRSTUVWXYZabc";
    int array_angka[];
    int i;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        txtPlain = (EditText) findViewById(R.id.txtPlain);
        txtKey = (EditText) findViewById(R.id.txtKey);
        txtCipher = (EditText) findViewById(R.id.txtCipher);

        btnEncrypt = (Button) findViewById(R.id.btnEncrypt);

        btnEncrypt.setOnClickListener(this);


    }

    @Override
    public void onClick(View v) {
        if(v == btnEncrypt){

            String plainTextInput = txtPlain.getText().toString();

            char[] array_huruf = plainTextInput.toCharArray();
            //int[] angka2;


            for (i=0 ; i < array_huruf.length ; i++){

                int posisi_huruf =  char_db.indexOf(array_huruf[i]);

                Toast.makeText(this, "Tombol ditekan " +  posisi_huruf , Toast.LENGTH_SHORT).show();
                array_angka[i] = posisi_huruf; //if I disable this line the code should run well
            }

        }
    }

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



}
我不知道这段代码是怎么回事,我希望有人能帮我解决问题。我真的希望。。。。谢谢你的关注。。。
Terima kasih.

您忘记初始化数组\u angka

// setting size to this scoping to just those 2 line of code
array_angka = new int[array_huruf.length];

您忘了初始化
数组\u angka

// setting size to this scoping to just those 2 line of code
array_angka = new int[array_huruf.length];

在使用对象之前,您需要将其初始化为
array\u angka
。默认情况下,它指向null。

在使用对象之前,您需要初始化对象的
array\u angka
。默认情况下,它指向null。

如果不想指定数组的长度,则必须使用列表

ArrayList<Integer> array_angka = new ArrayList<Integer>();
您可以从ArrayList中检索,如下所示

array_angka.add(posisi_huruf);
array_angka.get(0);

请记住,如果每次增加数组大小时都不提前知道要重新创建整个数组的数组长度,这就是ArrayList的作用,它可以为您提供一个动态增长的数组。

如果不想指定数组的长度,则必须使用列表

ArrayList<Integer> array_angka = new ArrayList<Integer>();
您可以从ArrayList中检索,如下所示

array_angka.add(posisi_huruf);
array_angka.get(0);

请记住,如果每次增加数组大小时都不提前知道要重新创建整个数组的数组长度,这就是ArrayList的作用,它可以为您提供一个动态增长的数组。

您忘记初始化
angka_数组。
数组。我在代码的开头初始化了它,但是我还没有声明数组的长度。。。这是主要的问题…你忘记初始化angka_数组了。我已经在代码的开头初始化了它,但是我还没有声明数组的长度。。。这是主要的问题希望你也理解这个问题希望你也理解这个问题我将来会得到你的答案作为我的参考。。这也确实有帮助。。。谢谢你……我以后会得到你的答案作为我的参考。。这也确实有帮助。。。非常感谢。