2015-03-02 19 views
11

dưới đây là mã của tôi mà là ném lỗi:Làm thế nào để tìm thấy kích thước mảng số nguyên trong java

Cannot invoke size() on the array type int[] 

Code:

public class Example{ 
int[] array={1,99,10000,84849,111,212,314,21,442,455,244,554,22,22,211};  
public void Printrange(){ 

for (int i=0;i<array.size();i++){ 
    if(array[i]>100 && array[i]<500) 
{ 
System.out.println("numbers with in range ":+array[i]); 
} 


} 

Thậm chí tôi đã cố gắng với array.length() nó cũng ném những lỗi tương tự. Khi tôi sử dụng cùng với string_name.length() đang hoạt động tốt.

Tại sao nó không hoạt động đối với mảng số nguyên?

+2

array.length ... – Eran

+0

Mảng không có phương thức size(). Họ có một lĩnh vực chiều dài. http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html –

+2

là câu hỏi này cần thiết? .. –

Trả lời

18

Chiều dài của một mảng có sẵn như là

int l = array.length; 

Kích thước của một List là availabe như

int s = list.size(); 
0

Không có phương pháp gọi size() với array. bạn có thể sử dụng array.length

0

Array Avatar của có

array.length 

trong khi Danh sách có

list.size() 

Thay array.size() để array.length

0
public class Test { 

    int[] array = { 1, 99, 10000, 84849, 111, 212, 314, 21, 442, 455, 244, 554, 
      22, 22, 211 }; 

    public void Printrange() { 

     for (int i = 0; i < array.length; i++) { // <-- use array.length 
      if (array[i] > 100 && array[i] < 500) { 
       System.out.println("numbers with in range :" + array[i]); 
      } 
     } 
    } 
} 
2

Integer mảng không chứa bất kỳ kích thước() hoặc chiều dài() method.Try code dưới đây nó sẽ làm việc. ArrayList chứa phương thức kích thước. Chuỗi chứa chiều dài(). Vì bạn đang sử dụng int array [], vì vậy nó sẽ là array.length

public class Example { 

    int array[] = {1, 99, 10000, 84849, 111, 212, 314, 21, 442, 455, 244, 554, 22, 22, 211}; 

    public void Printrange() { 

     for (int i = 0; i < array.length; i++) { 
      if (array[i] > 100 && array[i] < 500) { 
       System.out.println("numbers with in range" + i); 
      } 
     } 
    } 
} 
0

chúng ta có thể tìm thấy chiều dài của mảng bằng cách sử dụng thuộc tính array_name.length

int [] i = i.length;

0

Tôi nghĩ bạn đang nhầm lẫn giữa kích thước() và chiều dài.

(1) Lý do tại sao kích thước có dấu ngoặc đơn là do lớp của danh sách là Danh sách và đây là loại lớp. Vì vậy, lớp List có thể có kích thước phương thức().

(2) Loại của mảng là int [], và nó là kiểu nguyên thủy. Vì vậy, chúng tôi chỉ có thể sử dụng độ dài

Các vấn đề liên quan