Создать цикл из 2 переменных из моего кода (Android) - PullRequest
0 голосов
/ 30 октября 2019

Приложение по правилам дорожного движения

У меня есть мероприятие, в котором вопросы и ответы будут отображаться в зависимости от номера билета (20 вопросов и 5х20 ответов). Вопросы и ответы содержатся в резидентных и отсортированных строках. Мой код очень прост, я хочу упростить циклы, как в случае с вопросами [q], но с 2 переменными. Помогите мне, пожалуйста.

https://play.google.com/store/apps/details?id=ua.in.sil.cryzalit.mybilets

number = intent.getStringExtra("number");


  for( int i = 1; i < 21; i++)
    {
        q[i]= this.getResources().getIdentifier("q"+i+"_" + number, "string", this.getPackageName());

    }

    int a1_1 = this.getResources().getIdentifier("a1_1_" + number, "string", this.getPackageName());
    int a2_1 = this.getResources().getIdentifier("a2_1_" + number, "string", this.getPackageName());
    int a3_1 = this.getResources().getIdentifier("a3_1_" + number, "string", this.getPackageName());
    int a4_1 = this.getResources().getIdentifier("a4_1_" + number, "string", this.getPackageName());
    int a5_1 = this.getResources().getIdentifier("a5_1_" + number, "string", this.getPackageName());

\\\\

    int a1_20 = this.getResources().getIdentifier("a1_20_" + number, "string", this.getPackageName());
    int a2_20 = this.getResources().getIdentifier("a2_20_" + number, "string", this.getPackageName());
    int a3_20 = this.getResources().getIdentifier("a3_20_" + number, "string", this.getPackageName());
    int a4_20 = this.getResources().getIdentifier("a4_20_" + number, "string", this.getPackageName());
    int a5_20 = this.getResources().getIdentifier("a5_20_" + number, "string", this.getPackageName());

1 Ответ

0 голосов
/ 30 октября 2019

Вы можете использовать двумерный массив, вот код:

int answers[][] = new int[20][5];

for( int i = 0; i < 20; i++) {
    for( int j = 0; j < 5; j++){
         answers[i][j] = this.getResources().getIdentifier("a"+(j+1)+"_"+(i+1)_" + number, "string", this.getPackageName());
    }
}

Я не уверен, также для массива q , так как он будет начинаться с 0, просто еще разэто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...