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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Java1211张美红 中级黑马   /  2015-12-16 09:40  /  1404 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

方法一:
               if (x1 > x2 & x1 > x3) {
                        System.out.println("x1是最大值" + x1);
                }else if (x2 > x1 & x2 > x3 ) {
                        System.out.println("x2是最大值" + x2);
                }else if (x3 > x1 & x3 > x2 ) {
                        System.out.println("x3是最大值" + x3);
                }
方法二:
                 if ( x1 > x2 ) {
                        if ( x3 > x1) {
                                System.out.println("x3是最大值" + x3);
                        }else {
                                System.out.println("x1是最大值" + x1);
                        }
                }else {
                        if ( x3 > x2) {
                                System.out.println("x3是最大值" + x3);
                        }else {
                                System.out.println("x2是最大值" + x2);
                        }
                }
方法三:
               int temp,max;

                temp = (x1 > x2) ? x1 : x2;
                max = (temp > x3) ? temp : x3;

                System.out.println(max + "是最大数字");

16 个回复

倒序浏览
考虑相等的情况
回复 使用道具 举报
放到数组中不是更方便吗?
回复 使用道具 举报
int   max  ;
max= (a>b)?a:b;
max = (max>c)? max:c;
回复 使用道具 举报
需要考虑3个数中2个数 或者三个数都相等的情况~
回复 使用道具 举报
int   max  ;
max= (a>b)?a:b;
max = (max>c)? max:c;
这个比较简单
回复 使用道具 举报
李永佳 发表于 2015-12-16 11:59
放到数组中不是更方便吗?

放到数组,怎么弄?
回复 使用道具 举报

                int temp,max;

                temp = (x1 >= x2) ? x1 : x2;
                max = (temp >= x3) ? temp : x3;

                System.out.println(max + "是最大数字");
加个等号就行了吧!
回复 使用道具 举报
我有一个邮箱了 发表于 2015-12-17 21:47
int   max  ;
max= (a>b)?a:b;
max = (max>c)? max:c;

对,三元运算符看起来比较简洁!
回复 使用道具 举报
真勤劳呀,我还是初级黑马呢,
回复 使用道具 举报
求任意多整数中的最大值和最小值:
只需要将想要比较的值放如数组中
class MaxMin {
public static void main(String[] args) {
                int[] arr ={45,67,24,89,33,56,95};
                int max = getMax(arr);
                System.out.println("最大值: "+max);
                int min = getMin(arr);
                System.out.println("最大值: "+min);

        }
        public static  int getMax(int[] arr){//获取数组中最大值
                int max = arr[0];
                for (int i =1;i <arr.length ;i++ ) {
                        max = max < arr[i]? arr[i]:max;
                }
                return max;
        }
        public static  int getMin(int[] arr){//获取方法中最小值
                int min = arr[0];
                for (int i =1;i <arr.length ;i++ ) {
                        min = min > arr[i]? arr[i]:min;
                }
                return min;
        }
}
回复 使用道具 举报
anuo 中级黑马 2015-12-18 22:02:26
12#
三元运算
回复 使用道具 举报
李永佳 发表于 2015-12-16 11:59
放到数组中不是更方便吗?

三个数还是不用数组了
回复 使用道具 举报
相等的情况其实不用考虑
回复 使用道具 举报
李放 中级黑马 2015-12-18 23:19:55
15#
支持楼主!~
回复 使用道具 举报
这个如何
Math.max(int z,Math.max(int x,int y))
回复 使用道具 举报
奔跑着 来自手机 中级黑马 2015-12-19 02:00:40
17#
我有一个邮箱了 发表于 2015-12-18 21:41
求任意多整数中的最大值和最小值:
只需要将想要比较的值放如数组中
class MaxMin {

数组的话直接用sort()排序方法,然后arr[0]就是最小值,arr[arr.length-1] 就是最大值,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马