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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 龚建锋 初级黑马   /  2012-7-24 17:03  /  1530 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
* //需求:已知一个int数组, 编程从数组中获取最大最小数.
* 思路:定义一个数组,并分别定义获取最大最小值的有返回值的方法,
*      使用FOR循环对数组元素循环比较,将最值赋给一个变量,并返回值*/
public class GetMax {
public static void main(String[] args) {
  int[] arr = { 15, 67, 23, 89, 36, 88, 100, 12 };
  int max = getMax(arr);
  
  int min=getMin(arr);
  
  System.out.println("数组中的最大值是   " + max);
  
  System.out.println("数组中的最小值是   " + min);
}
static int getMax(int[] arr) {
  int max = arr[0];
  for (int i = 0; i < arr.length; i++) {
   if (arr[i] > max) {
   max = arr[i];
   
   }
  }
  return max;
  }
  
  static int getMin(int[] arr){
   
   int min=arr[0];
   
   for(int j=0;j<arr.length;j++){
   
    if(arr[j]<min)
     
     min=arr[j];
   }
   
   return min;
   
  }
}
/*
上面是一个对先定义好的数组进行取最值的小程序,但如何只定义数组长度和类型,不定义数组元素的情况下,
由键盘依次输入并让程序接收并存为数组元素,然后再对该数组进行最值的获取或者是排序等操作呢?

如图需求:
*/

xuqiu.jpg (25.13 KB, 下载次数: 30)

需求图

需求图

6 个回复

倒序浏览
你应该还没看到IO那部分吧?看一下IO那部分,获取键盘输入,很简单的!
回复 使用道具 举报
import java.util.*;
public class GetMax {
public static void main(String[] args) {
  Scanner sc=new Scanner(System.in);//输入机制
  System.out.println("请输入数组的长度:");
  int num1=sc.nextInt();//给数组定义长度
     int[] arr =new int[num1];
     System.out.println("请为数组的赋值:");
for(int i=0;i<arr.length;i++)
    {
   int num2=sc.nextInt();//给数组循环赋值
   arr[i]=num2;
}
   int max = getMax(arr);
   
   int min=getMin(arr);
   
   System.out.println("数组中的最大值是   " + max);
   
   System.out.println("数组中的最小值是   " + min);
}
   static int getMax(int[] arr) {
   int max = arr[0];
   for (int i = 0; i < arr.length; i++) {
    if (arr[i] > max)
       max = arr[i];
        continue;
   }
     return max;
   }
   
   static int getMin(int[] arr){
   
    int min=arr[0];
   
    for(int j=0;j<arr.length;j++){
     
    if(arr[j]<min)
      
      min=arr[j];
   continue;
    }
   
    return min;
   
   }
}

4ISZE3GC2RS5X6%3H3}(Z]2.jpg (22.45 KB, 下载次数: 25)

4ISZE3GC2RS5X6%3H3}(Z]2.jpg

评分

参与人数 1技术分 +1 收起 理由
韦念欣 + 1 赞一个!

查看全部评分

回复 使用道具 举报
  1. public static void main(String[] args) {
  2.                 Scanner sc=new Scanner(System.in);
  3.                 System.out.println("请输入数组长度!");
  4.                 int len=Integer.parseInt(sc.nextLine());
  5.                 int[] arr=new int[len];
  6.                 for(int i=0;i<arr.length;i++){
  7.                         System.out.println("请输入第"+(i+1)+"个数组元素");
  8.                         arr[i]=Integer.parseInt(sc.nextLine());
  9.                 }
  10.                   int max = getMax(arr);
  11.                   
  12.                   int min=getMin(arr);
  13.                   
  14.                   System.out.println("数组中的最大值是   " + max);
  15.                   
  16.                   System.out.println("数组中的最小值是   " + min);
  17.                 }
  18.                 static int getMax(int[] arr) {
  19.                   int max = arr[0];
  20.                   for (int i = 0; i < arr.length; i++) {
  21.                    if (arr[i] > max) {
  22.                    max = arr[i];
  23.                   
  24.                    }
  25.                   }
  26.                   return max;
  27.                   }
  28.                   
  29.                   static int getMin(int[] arr){
  30.                   
  31.                    int min=arr[0];
  32.                   
  33.                    for(int j=0;j<arr.length;j++){
  34.                     
  35.                     if(arr[j]<min)
  36.                      
  37.                      min=arr[j];
  38.                    }
  39.                   
  40.                    return min;
  41.                   
  42.                   }
复制代码
我用的是输入数组长度,然后依次循环接收每个数组元素,最后排序输出。
回复 使用道具 举报
是吗?在传智的Java基础班上课,目前还没学到,也没往后看,只是在遇到数组时想到这个问题。呵呵~~谢谢各位!看来哥们我涉Java不够深啊~~呵呵
回复 使用道具 举报
  1. package test1;

  2. import java.util.Scanner;

  3. public class Test3_GetMax {

  4.         /*
  5.          * 需求:已知一个int数组, 编程从数组中获取最大最小数. 思路:定义一个数组,并分别定义获取最大最小值的有返回值的方法,
  6.          * 使用FOR循环对数组元素循环比较,将最值赋给一个变量,并返回值
  7.          */
  8.         public static void main(String[] args) {
  9.                 //int[] arr = { 15, 67, 23, 89, 36, 88, 100, 12 };
  10.                
  11.                 Scanner sc = new Scanner(System.in);
  12.                 int[] arr = new int[5];
  13.                 for (int i = 0; i < arr.length; i++) {
  14.                         System.out.print("请输入第" + (i + 1) + "个整数:");
  15.                         arr[i] = sc.nextInt();
  16.                 }

  17.                 int max = getMax(arr);
  18.                 int min = getMin(arr);

  19.                 System.out.println("数组中的最大值是   " + max);
  20.                 System.out.println("数组中的最小值是   " + min);
  21.         }

  22.         static int getMax(int[] arr) {
  23.                 int max = arr[0];
  24.                 for (int i = 0; i < arr.length; i++) {
  25.                         if (arr[i] > max) {
  26.                                 max = arr[i];
  27.                         }
  28.                 }
  29.                 return max;
  30.         }

  31.         static int getMin(int[] arr) {
  32.                 int min = arr[0];
  33.                 for (int j = 0; j < arr.length; j++) {

  34.                         if (arr[j] < min)

  35.                                 min = arr[j];
  36.                 }
  37.                 return min;
  38.         }
  39. }
复制代码
回复 使用道具 举报
  1. class ArryToolDom
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int[] arr = {57,68,34,56,89,87,54,65};

  6.                 ArryTool tool = new ArryTool();

  7.                 int max = tool.getMax(arr);

  8.                 System.out.println("max="+max);
  9.         }
  10. }

  11. class  ArryTool  
  12. {       
  13.         public int getMax(int[] arr)  
  14.         {
  15.                 int max = 0;
  16.                 for (int x=1;x<arr.length ;x++ )
  17.                 {
  18.                         if (arr[x]>arr[max])
  19.                                 max = x;
  20.                 }
  21.                 return arr[max];
  22.         }
  23.         public int getMin(int[] arr)
  24.         {
  25.                 int min = 0;
  26.                 for (int x=1;x<arr.length ;x++ )
  27.                 {
  28.                         if (arr[x]<arr[min])
  29.                                 min = x;                       
  30.                 }
  31.                 return arr[min];
  32.         }
  33.         public void selsctSort(int[] arr)
  34.         {
  35.                 for (int x=0;x<arr.length-1 ;x++ )
  36.                 {
  37.                         for (int y=x+1;y<arr.length ;y++ )
  38.                         {
  39.                                 swap(arr,x,y);
  40.                           }
  41.                 }
  42.         }
  43.         public void bubbleSort(int [] arr)
  44.         {
  45.                 for (int x=0;x<arr.length-1 ;x++ )
  46.                 {
  47.                         for (int y=0;y<arr.length-x-1 ;y++)
  48.                         {
  49.                                 if (arr[y]>arr[y+1])
  50.                                 {
  51.                                         swap(arr,y,y+1);
  52.                                 }
  53.                         }
  54.                 }
  55.         }
  56.         public void swap(int[] arr,int a, int b)
  57.         {
  58.                 int temp = arr [a];
  59.                 arr[a] = arr[b];
  60.                 arr[b] = temp;
  61.         }
  62.        
  63. }
复制代码
这是我写的一个关于数组操作的工具类  你可以参考一下!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马