2017-11-12 18 views
0

メソッドを含む外部クラスを使用しています:public static boolean isPrime(int n)別のクラスの呼び出しメソッドJAVA

私はJavaで新しく、別のクラスのメソッドを呼び出す方法がわかりません。他の投稿を読んでいて、オブジェクトを作成することを提案しています。そのため、TestPrime objeto =新しいTestPrime(); if(objeto.isPrime(arrayInt [i])== true)は機能しません。

import com.utad.idcd.redes.PrimeNumber; 
public class TestPrime { 
    public static void main(String[] args) { 
     TestPrime objeto=new TestPrime(); 
     int arrayInt[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 
     for(int i=0; i<9; i++){ 

      System.out.print("El" + arrayInt[i] + "es: "); 

      if(objeto.isPrime(arrayInt[i])==true){ 
       System.out.print("primo\n"); 
      } 
      else { 
       System.out.print("no primo\n"); 
      } 
     }     
    } 
} 
+0

[MCVE]提供します。 – Gendarme

+0

'isPrime'メソッドはどこに定義されていますか? – Eran

+1

isPrimeメソッドを定義する外部クラスの名前はPrimeNumberです。したがって、メソッドはPrimeNumberクラスにあります。自分のクラスのTestPrimeではありません。したがって、obPoime()を呼び出すobjetoはTestPrime型であり、意味をなさない。このメソッドは静的なので、インスタンスを呼び出す必要はありません。必要なのは 'if(PrimeNumber.isPrime(arrayInt [i]))'だけです。 –

答えて

0

あなたは今、それがうまく実行する必要がありますPrimeNumberクラス

import com.utad.idcd.redes.PrimeNumber; 
    public class TestPrime { 
    public static void main(String[] args) { 
     int arrayInt[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 
     for(int i=0; i<9; i++){ 

      System.out.print("El" + arrayInt[i] + "es: "); 

      if(PrimeNumber.isPrime(arrayInt[i])==true){ 
       System.out.print("primo\n"); 
      } 
      else { 
       System.out.print("no primo\n"); 
      } 
     }  
    } 
} 

のオブジェクトを作成する必要があります。

編集: 申し訳ありませんが、私はメソッドが静的だったのを見ませんでした。 あなたのメソッドは静的であり、公共のあなたにも同じよう静的インポートを使用することができるので:直接

if(isPrime(arrayInt[i])==true){ 
+0

このメソッドは静的です。インスタンスを作成する必要はありません。 –

0

としての機能を使用し、その後

import static com.utad.idcd.redes.PrimeNumber.isPrime; 

と男下記の例を見てください、

クラスPrimeNumber {

public void boolean isPrimeNumber(){

//あなたのコードはここに素数をチェック

}

}

クラスMainTest {

public static void main(String[] args) { 
    PrimeNumber obj =new PrimeNumber(); 
    int arrayInt[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 
    for(int i=0; i<9; i++){ 

     System.out.print("El" + arrayInt[i] + "es: "); 

     if(obj.isPrimeNumber(arrayInt[i])==true){ 
      System.out.print("primo\n"); 
     } 
     else { 
      System.out.print("no primo\n"); 
     } 
    }  
} 

}

関連する問題