برگشت ندادن سایز لیست

پرسیده شده
فعالیت 1057 روز پیش
دیده شده 431 بار
0

با سلام و وقت بخیر

زمانی که ریکوست میزنم به همان لینک که استاد دادن  و ریکوست برمیگرده و داده رو ست میکنم لیست که تعریف میکنم میخوام سایز لیست رو بگیرم با ارور مواجه میشم و در  ریسایکلو نمایش داده نمیشه  

org.json.JSONException: Index 1811 out of range [0..1811)

اکسیپشن میده نمیدونم چرا ؟ 

 

میخواستم از سایت انلاین که هس برای ریکوست با جیسون مثل https://jsonlint.com/ چطور ساختنه و بصورت رایگان اجرا میشه ممنون میشم راهنمایی کنید ؟

 

 

فایل پیوست

بهروز البرزی
بهروز البرزی

15 خرداد 00

1
حذف شده

سلام مجدد

بهروز جان پیشنهاد میکنم نام گذاری ها رو حتما حتما طبق ویدیو ها انجام بدی چرا که این مورد باعث میشه نام گذاری صحیح ملکه ذهن بشه و در اینده در شرکت ها به مشکل نخوری 

مثلا جمع بستن نام مدل روش درستی نیست و استاندارد هست جمع بسته نشود مثال صحیح: Student 

مورد دوم چون در حین اموزش هستین ممکن هست تفاوت در نام گذاری ها باعث شود که مشکلات سخت تر پیدا شود.

 

اما بریم سراغ مشکل : توی حلقه مروبطه for (int i = ۰; i < response.length(); i++) به اشتباه همونطور که در تاپیک بالا گفته بودم شرط حلقه به اشتباه نوشته شده.

که درستش خواهد شد :

for (int i = 0; i < jsonArrayAll.length(); i++)

 

فایل پیوست

پوریا شفیعی

توسط

پوریا شفیعی

16 خرداد 00

حذف شده
ممنون پوریا جان درسته برای نام گذاری که بهم گفتی حتما دقت میکنم مثل آموزش پیش برم و تشکر که کمک کردی و همیشه با حوصله و با دقت وقت باارزشتو میزاری
بهروز البرزی

16 خرداد 00

حذف شده
قربانت
پوریا شفیعی

16 خرداد 00

0
حذف شده

سلام وقت بخیر بهروز جان

 

احتمالا جایی که حلقه for رو زدی در قسمت شرط جایی رو اشتباه تایپ کردی 

کد مربوطه رو ارسال کن تا این مورد رو بررسی کنم و راهنمایی بهتری داشته باشم

فایل پیوست

پوریا شفیعی

توسط

پوریا شفیعی

15 خرداد 00

حذف شده
من کد رو چک کردم نمیدونم مشکلی نبود ندیدم و امکان داره بخاطر زیاد بود لیست باشه 1800 تا ایتم گمونم که این ارور رو میده ؟
بهروز البرزی

15 خرداد 00

0
حذف شده

سلام پوریا جان 

این کد mainActivity :


public class MainActivity extends AppCompatActivity {

    private static final String TAG = "MainActivity";
    private RequestQueue requestQueue;

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

        View fabAddItemStudents = findViewById(R.id.fab_main_students);
        fabAddItemStudents.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(MainActivity.this,AddNewStudentsActivity.class));
            }
        });


      

        StringRequest request = new StringRequest(Request.Method.GET,
               "http://expertdevelopers.ir/api/v1/experts/student" , new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {

//              Log.i(TAG, "onResponse: " + response);
                try {
                List<Students> studentsList = new ArrayList<>();
                JSONArray jsonArrayAll = new JSONArray(response);

                for (int i = 0; i < response.length(); i++) {
                    Students students = new Students();
                   JSONObject jsonObjectItem = jsonArrayAll.getJSONObject(i);

                        students.setId(jsonObjectItem.getInt("id"));
                        students.setFirstName(jsonObjectItem.getString("first_name"));
                        students.setLastName(jsonObjectItem.getString("last_name"));
                        students.setCourse(jsonObjectItem.getString("course"));
                        students.setScore(jsonObjectItem.getInt("score"));


                  //  String date= jsonObjectItem.getString("created_at").substring(0,jsonObjectItem.getString("created_at").indexOf(" "));
                        students.setCreateDate(jsonObjectItem.getString("created_at"));

                        studentsList.add(students);
                    }


                    Log.i(TAG, "onResponse: "+studentsList.size());

                    RecyclerView recyclerView = findViewById(R.id.recycler_view_main_students);
                    recyclerView.setLayoutManager(new LinearLayoutManager(MainActivity.this,RecyclerView.VERTICAL,false));
                    recyclerView.setAdapter(new StudentAdapter(studentsList));

                }catch (JSONException e){
                    Log.e(TAG, "onResponse: " +e.toString() );
                }


            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {

                Log.e(TAG, "onErrorResponse: " +error.toString() );

            }
        });

        request.setTag(TAG);
        request.setRetryPolicy(new DefaultRetryPolicy(10000,3,2));
        requestQueue = Volley.newRequestQueue(this);
        requestQueue.add(request);



    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        requestQueue.cancelAll(TAG);
    }
}

 

 

 

فایل پیوست

بهروز البرزی

توسط

بهروز البرزی

15 خرداد 00