A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1.分析以下需求,并用代码实现:
        (1)定义一个int类型的二维数组
        (2)获取该二维数组最小元素,并输出

       
       
2.分析以下需求,并用代码实现:
        (1)定义一个int类型的一维数组,内容为{6,2,9,6,1,2,6,7,8}
        (2)去除上面定义的数组中的重复元素,打印最终结果{6, 2, 9, 1, 7, 8}
        提示: (新建一个数组)
       

       
3.分析以下需求,并用代码实现:
        (1)定义一个int类型的一维数组,内容为{6,2,9,15,1,5,20,7,18}
        (2)将数组最大元素与最后一位元素进行交换,最小元素与第一位元素进行交换,并打印数组
       

7 个回复

正序浏览
第三题:
public class Test {

        public static void main(String[] args) {
                int[] arr = {6,2,9,15,1,5,20,7,18};
                int max = arr[0];
                int min = arr[0];
                int indexMax = 0;
                int indexMin = 0;
                for (int i = 0; i < arr.length; i++) {
                        if(max < arr[i]){
                                max = arr[i];
                                indexMax = i;
                        }
                        if(min > arr[i]){
                                min = arr[i];
                                indexMin = i;
                        }
                }
                System.out.println("数组中的最小元素为:" + indexMin + "位置的" + min);
                System.out.println("数组中的最大元素为:" + indexMax + "位置的" + max);
                int temp = arr[indexMin];
                arr[indexMin] = arr[0];
                arr[0] = temp;
                temp = arr[indexMax];
                arr[indexMax] = arr[arr.length - 1];
                arr[arr.length - 1] = temp;
                for (int i : arr) {
                        System.out.print(i + " ");
                }
        }

}
回复 使用道具 举报
第三題:
package cn.itcast_homework;

//分析以下需求,并用代码实现:
//(1)定义一个int类型的一维数组,内容为{6,2,9,15,1,5,20,7,18}
//(2)将数组最大元素与最后一位元素进行交换,最小元素与第一位元素进行交换,并打印数组
public class ArrayDemo3 {
        public static void main(String[] args) {
                int arr[] ={6,2,9,15,1,5,20,7,18};
                int arr2[] = new int[arr.length];
                for (int a = 0 ; a < arr.length;a++){
                        arr2[a] = arr[a];
                }
                int max = arr[0];
                int maxIndex = 0;
                int minIndex = 0;
                for (int a = 0; a < arr2.length; a++) {
                        if (max < arr2[a]) {
                                int temp = arr2[a];
                                arr2[a] = max;
                                max = temp;
                                maxIndex = a;
                        }
                }
                int min = arr2[0];
                for (int a = 0; a < arr2.length; a++) {
                        if (min > arr2[a]) {
                                min = min ^ arr2[a];
                                arr2[a] = min ^ arr2[a];
                                min = min ^ arr2[a];
                                minIndex = a;
                        }
                }
                arr2 = null;
                int temp = arr[0];
                arr[0] = arr[minIndex];
                arr[minIndex] = temp;
                temp = arr[maxIndex];
                arr[maxIndex] = arr[arr.length - 1];
                arr[arr.length - 1] = temp;
                System.out.print("[");
                for (int a = 0; a < arr.length; a++) {
                        if (a != arr.length - 1) {
                                System.out.print(arr[a] + ", ");
                        } else {
                                System.out.print(arr[a] + "]");
                        }
                }
                arr = null;
                System.gc();
        }
}
回复 使用道具 举报
第二題:
import java.util.ArrayList;
import java.util.List;

//分析以下需求,并用代码实现:
//(1)定义一个int类型的一维数组,内容为{6,2,9,6,1,2,6,7,8}
//(2)去除上面定义的数组中的重复元素,打印最终结果{6, 2, 9, 1, 7, 8}
//提示: (新建一个数组)
public class ArrayDemo2 {
        public static void main(String[] args) {
                int arr[] = {6,2,9,6,1,2,6,7,8};
                List<Integer> array = new ArrayList<Integer>();
                for (int a = 0 ; a < arr.length;a++){
                        if (array.contains(arr[a])){
                                continue;
                        }
                        array.add(arr[a]);
                }
                System.out.print("{");
                for (int a = 0 ; a < array.size();a++){
                        if (a != array.size() - 1){
                                System.out.print(array.get(a)+", ");
                        }else{
                                System.out.print(array.get(a)+"}");
                        }
                }
        }
}
回复 使用道具 举报
第一题 用for嵌套
第二题 先声名一个新的数组 然后用if语句切换条件
第三题 不会
回复 使用道具 举报
第二题用TreeSet
回复 使用道具 举报
第一题:
import java.util.ArrayList;
import java.util.List;
//(1)定义一个int类型的二维数组
//(2)获取该二维数组最小元素,并输出

public class ArrayDemo {
        public static void main(String[] args) {
                int arr[][] = {{2,3,4},{5,6,7},{8,9,10}};
                List<Integer> array = new ArrayList<Integer>();
                for (int a = 0 ; a < arr.length ; a++){
                        for (int b = 0 ; b < arr[a].length;b++){
                                array.add(arr[a][b]);
                        }
                }
                //最小值
                int min = array.get(0);
                for(int a = 0 ; a < array.size();a++){
                        if (min > array.get(a)){
                                int temp = array.get(a);
                                array.set(a, min);
                                min = temp;
                        }
                }
                System.out.println(min);
        }
}
回复 使用道具 举报
var arr=[
[10,5,8,9],
[4,9,12,53]
];
//先定义最小值为arr[0][0]
var min=arr[0][0];
//通过循环进行比较
for(var i=0;i<arr.length;i++)
{
        for(var j=0;j<arr[i].length;j++)
                {
                        if(min>arr[i][j])
                        {
                                min=arr[i][j]
                        }

                }
               
}
document.write(min);
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马