web-dev-qa-db-ja.com

javaで整数配列サイズを見つける方法

以下はエラーを投げている私のコードです:

_Cannot invoke size() on the array type int[]
_

コード:

_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]); 
}


}
_

array.length()で試しても、同じエラーがスローされました。 string_name.length()で同じものを使用すると、うまくいきます。

整数配列に対して機能しないのはなぜですか?

16
Shiva Krishna

配列の長さは次のように利用できます

int l = array.length;

Listのサイズは次のとおりです。

int s = list.size();
29
user1907906

Size()とlengthの間で混乱していると思います。

(1)サイズに括弧があるのは、リストのクラスがListであり、クラスタイプであるためです。したがって、Listクラスにはsize()メソッドを含めることができます。

(2)配列の型はint []であり、プリミティブ型です。だから長さしか使えない

1
munmunbb

配列の

_array.length
_

一方、リストには

_list.size()
_

array.size()を_array.length_に置き換えます

0
Ankur Singhal

array_name.length属性を使用して配列の長さを見つけることができます

int [] i = i.length;

0
Varun
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]);
            }
        }
    }
}
0
Arun Kumar

整数配列には、size()メソッドまたはlength()メソッドは含まれません。以下のコードを試してください、それは動作します。 ArrayListにはsize()メソッドが含まれています。文字列にはlength()が含まれます。 int array []を使用しているため、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
Suman Behara

arraysize()を呼び出すメソッドはありません。 array.lengthを使用できます