InvokeRepeating doesn't work

I have this script, and it gives me these errors. What is wrong?
Thanks!

Assets/MyClass.cs(9,37): error CS1519: Unexpected symbol `RandomValue’ in class, struct, or interface member declaration

Assets/none.cs(17,17): error CS0178: Invalid rank specifier: expected ,' or ]’

using UnityEngine;
using System.Collections;

public class MyClass : MonoBehaviour {

	GameObject[] non;
	int i = 0;

	InvokeRepeating("Activator", 0.1f, 0.1f);

	void Activator() {
		i++;
		if(i >= non.Length)
		{
			i = 0;
		}
		non[!=i].SetActive(false);
	}
}

Invoke repeating is a method, and must be called from within a method or property. Try moving it into start.

maybe something like this would work for you:

public GameObject[] non;
private int index = 0;

void Update()
{
    Change();
}

private void Change()
{
    index++;

    if (index >= non.Length)
    {
        index = 0;
    }

    for (var i = 0; i < non.Length; i++)
    {
        non*.SetActive(i == index);*

}
}
this is c# - the second piece of code you posted is unityscript, whereas the first was c#.