有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我可以在安卓 studio中使用数组吗?如果可以,那么如何在屏幕上显示数组的所有元素

我想用数组而不是ArrayList来打印所有这些数字

显示此错误消息:

2021-04-11 12:32:51.142 8075-8075/com。实例listviewtest E/AndroidRuntime:致命异常:主 进程:com。实例listviewtest,PID:8075 JAVAlang.RuntimeException:无法启动活动组件信息{com.example.listviewtest/com.example.listviewtest.UsingArray}:java。lang.NullPointerException:尝试调用虚拟方法“void”。小装置。文本视图。空对象引用上的setText(java.lang.CharSequence)“” 在安卓。应用程序。活动线程。performLaunchActivity(ActivityThread.java:3308) 在安卓。应用程序。活动线程。handleLaunchActivity(ActivityThread.java:3457) 在安卓。应用程序。服务器事务。启动ActivityItem。执行(LaunchActivityItem.java:83) 在安卓。应用程序。服务器事务。事务执行器。executeCallbacks(TransactionExecutor.java:135) 在安卓。应用程序。服务器事务。事务执行器。执行(TransactionExecutor.java:95) 在安卓。应用程序。ActivityThread$H.handleMessage(ActivityThread.java:2044) 在安卓。操作系统。处理程序。dispatchMessage(Handler.java:107) 在安卓。操作系统。活套。循环(Looper.java:224) 在安卓。应用程序。活动线程。main(ActivityThread.java:7560) 在爪哇。朗。反思。方法调用(本机方法) 在com。安卓内部的操作系统。RuntimeInit$MethodAndArgsCaller。run(RuntimeInit.java:539) 在com。安卓内部的操作系统。合子体。main(ZygoteInit.java:950) 原因:java。lang.NullPointerException:尝试调用虚拟方法“void”。小装置。文本视图。空对象引用上的setText(java.lang.CharSequence)“” 在com。实例listviewtest。使用阵列。onCreate(UsingArray.java:58) 在安卓。应用程序。活动performCreate(Activity.java:7894) 在安卓。应用程序。活动performCreate(Activity.java:7881) 在安卓。应用程序。仪器仪表。callActivityOnCreate(Instrumentation.java:1307) 在安卓。应用程序。活动线程。performLaunchActivity(ActivityThread.java:3283)

这是密码

包com。实例列表视图测试

import 安卓x.appcompat.app.AppCompatActivity;

import 安卓.os.Bundle;
import 安卓.util.Log;
import 安卓.widget.LinearLayout;
import 安卓.widget.ListView;
import 安卓.widget.TextView;

import java.util.Arrays;

public class UsingArray extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_using_array);
        String[] numbers = new String[20];
        numbers[0] = ("One");
        numbers[1] = ("Two");
        numbers[2] = ("Three");
        numbers[3] = ("Four");
        numbers[4] = ("Five");
        numbers[5] = ("Six");
        numbers[6] = ("Seven");
        numbers[7] = ("Eight");
        numbers[8] = ("Nine");
        numbers[9] = ("Ten");
        numbers[10] = ("Eleven");
        numbers[11] = ("Twelve");
        numbers[12] = ("Thirteen");
        numbers[13] = ("Fourteen");
        numbers[14] = ("Fifteen");
        numbers[15] = ("Sixteen");
        numbers[16] = ("Seventeen");
        numbers[17] = ("Eighteen");
        numbers[18] = ("Nineteen");
        numbers[19] = ("Twenty");

//        LinearLayout arrayTextView = (LinearLayout) findViewById(R.id.arrayTextView);

//        Log.v("UsingArray", "In index 0 = " + numbers[0]);
//        Log.v("UsingArray", "In index 1 = " + numbers[1]);
//        Log.v("UsingArray", "In index 2 = " + numbers[2]);
//        Log.v("UsingArray", "In index 3 = " + numbers[3]);
//        Log.v("UsingArray", "In index 4 = " + numbers[4]);
//        Log.v("UsingArray", "In index 5 = " + numbers[5]);
//        Log.v("UsingArray", "In index 6 = " + numbers[6]);
//        Log.v("UsingArray", "In index 7 = " + numbers[7]);
//        Log.v("UsingArray", "In index 8 = " + numbers[8]);
//        Log.v("UsingArray", "In index 9 = " + numbers[9]);
//        Log.v("UsingArray", "In index 10 = " + numbers[10]);
        TextView textView = (TextView) findViewById(R.id.usingArrayTextView);
//        for (int y = 0; y <= numbers.length - 1; y++) {
//            textView.setText(Arrays.toString(new String[]{numbers[y]}));
//        }
        textView.setText(Arrays.toString(numbers));
    }
}

共 (1) 个答案

  1. # 1 楼答案

    有两种方法可以做到这一点:

    以下java代码在我的情况下运行良好:

    import android.os.Bundle;
    import android.widget.TextView;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import java.util.Arrays;
    
    public class UsingArray extends AppCompatActivity {
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_using_array);
        String[] numbers = new String[20];
        numbers[0] = ("One");
        numbers[1] = ("Two");
        numbers[2] = ("Three");
        numbers[3] = ("Four");
        numbers[4] = ("Five");
        numbers[5] = ("Six");
        numbers[6] = ("Seven");
        numbers[7] = ("Eight");
        numbers[8] = ("Nine");
        numbers[9] = ("Ten");
        numbers[10] = ("Eleven");
        numbers[11] = ("Twelve");
        numbers[12] = ("Thirteen");
        numbers[13] = ("Fourteen");
        numbers[14] = ("Fifteen");
        numbers[15] = ("Sixteen");
        numbers[16] = ("Seventeen");
        numbers[17] = ("Eighteen");
        numbers[18] = ("Nineteen");
        numbers[19] = ("Twenty");
    
        TextView textView = (TextView) findViewById(R.id.usingArrayTextView);
        textView.setText(Arrays.toString(numbers));
    }
    

    }

    布局文件

    The layout file

    输出正常,我没有收到任何空指针异常

    Output Image 如果有不清楚的地方,请随时询问