[ad_1]
<pre>package dsa; import java.util.ArrayList; public class PairSumR { public static boolean isValidPair(int[] arr, int n, int k, int m) { ArrayList<Integer> list = new ArrayList<Integer>(); int rem= Integer.MAX_VALUE; for(int i= 0; i<arr.length;i++){ rem=arr[i]%k; if(list.contains(m-rem)) return true; if(!list.contains(rem)) list.add(rem); } return false; } public static void res() { System.setOut(isValidPair(arr, 5, 3, 2)); } public static void main(String [] args) { int[] arr= {3,5,2,6,4}; PairSumR.res(); } }
私が試したこと:
メソッド呼び出しで配列を渡し、それをパラメーターとして提供しました
エラー表示:
arr を変数に解決できません
解決策 1
arr
両方のパラメーターです isValidPair
とローカル変数 main
.そのため、これらの 2 つのメソッド内でのみアクセスできます。一方はメソッドのパラメーターであるため、その中にあるものは、宣言されているものと同じ配列である必要はありません。
main
整数の任意の配列を渡すことができるためです。
そのため、内部にはまったく存在しません。 res
メソッド – そしてそれがエラーが伝えていることです。 おそらく、あなたはそれをパラメータにする必要があります res
メソッドだけでなく、 isValidPair
方法。
[ad_2]
コメント