2道Java编程基础题目,希望大家会的话能马上写好,赶时间
速求了,xdm
1
第一题:
public static int [] findSameElemets(int [] a ,int b []) {
if(null==a||a.length==0) {
return a;
}
if(null==b||b.length==0) {
return b;
}
int [] c =new int[] {};
for(int i=0;i<a.length;i++) {
for(int j=0;j<b.length;j++) {
if(a[i]==b[j]) {
c=Arrays.copyOf(c, c.length+1);
c[c.length-1]=b[j];
}
}
}
System.out.println("same elements:"+Arrays.toString(c));
return c;
}
第二题:
public static double [] invertedSort(double [] a) {
if(null==a||a.length==0) {
return a;
}
double [] reverseArra = new double[a.length];
for (int i = 0; i < a.length; i++) {
reverseArra[i] = a[a.length - i - 1];
}
System.out.println("reverse:"+Arrays.toString(reverseArra));
return reverseArra;
}
第一题求两数组中重复的元素:
public static Integer[] methed3(Integer[] a ,Integer[] b){
Set<Integer> set = new HashSet<>(Arrays.asList(a));
Set<Integer> setb = new HashSet<>(Arrays.asList(b));
set.retainAll(setb);
Integer[] r = new Integer[set.size()];
set.toArray(r);
return r;
}
第二题,数组倒转:
public static double[] methed4(double[] a ){
if (a == null)return null;
if (a.length == 0)return a;
int l=0,r=a.length-1;
while (l < r){
double t = a[l];
a[l] = a[r];
a[r] = t;
l++;
r--;
}
return a;
}
第一题求数组相同值,加判断是[ ]和null直接return就行
第二题把所有数组元素变成double,加判断是[ ]和null直接return就行
希望下次别直接发英文题目,真的看不懂
老弟,写代码不容易,记得采纳啊