list.contains problem

I’m trying to check if a list already contains a variable (which is an int) but it says "cannot convert ‘int’ expression to type ‘maze list’ " and i’m quite new to unity so i can’t figure out whats wrong, here’s the class:

using UnityEngine;
using System.Collections;

public class MazeList
{
	public int roomPos;

	public MazeList(int newRoomPos)
	{
		roomPos = newRoomPos;
	}
}

And the code in question:

    private int roomPosition;
	private int direction;
	private int roomSpawner;

	List<MazeList> roomList = new List<MazeList> ();

	// Use this for initialization
	void Start () 
	{
		roomList.Clear ();
		roomPosition = Random.Range (0, 16);
		roomList.Add(new MazeList (roomPosition));

		if (roomList.Count < 6) {	
			direction = Random.Range (0, 4);
			if (direction == 1) {
				roomPosition += 1;
				if (roomPosition > 16) {
					Start ();
				} else if (roomList.Contains (roomPosition)) {
					Start ();
				} else {
					roomList.Add (new MazeList (roomPosition));
					Start ();
				}

Any help would be greatly appreciated, thanks.

The list does not contain integers, it contains your room objects that contain integers. Lookup predicate searches, you can find objects based on properties in them from a list, it would be best just to check if the predicate is null or not. I am on my phone so I can’t post examples till later.