注册 登录
编程论坛 C# 论坛

为什么提示数组a不包含Max方法,找不到错误原因

编程要有思想 发布于 2013-11-11 21:55, 537 次点击
using System;
using System.Collections.Generic;
using
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace 类方法的数组性参数
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Maxer m = new Maxer();
            int[] a = new int[] { 4, 7, 5, 6, 8, 9 };
            int max = a.Max(a);
           // int max=a.Maxp(5,4,6,2,8,99,4,66,3,5);
            this.textBox1.Text = max.ToString();
           // this.textBox2.Text = maxp.ToString();

        }
        class Maxer
        {
            public int Max(int[] numbers)
            {
                int k = 0;

                for (int i = 0; i < numbers.Length; i++)
                {
                    if (numbers[k] < numbers[i])
                  

                        k = i;
                    }
                        return numbers[k];
                    }
                }
            
           /*  public int Maxp(int[] numbers)
            {
                int k = 0;

                for (int i = 0; i < numbers.Length; i++)
                {
                    if (numbers[k] < numbers[i])
                    

                        k = i;
                    }
                    return numbers[k];


                  }*/


            }
        
    }
}
}
5 回复
#2
qw11617485792013-11-12 09:20
Max中不能带参数,
int max = a.Max();
#3
编程要有思想2013-11-12 09:46
回复 2楼 qw1161748579
哦!是的,那请问a.max()是调用下面的Max方法吗?
#4
qw11617485792013-11-13 09:18
回复 3楼 编程要有思想
它本身自带有Max()方法,你如果要用自己的方法就要在前面加上类名

[ 本帖最后由 qw1161748579 于 2013-11-13 09:21 编辑 ]
#5
shangsharon2013-11-13 18:55
Maxer m = new Maxer();
int[] a = new int[] { 4, 7, 5, 6, 8, 9 };
int max = a.Max(a);//此处有错
正解int max = m.Max(a);
#6
编程要有思想2013-11-21 18:24
回复 5楼 shangsharon
明白了,thankyou ,你们学的还是蛮不错的哈!
1