In first view controller i saved data in core data with uitextfields, i wanted to tableview to read that data in second view controller, i got no errors but i got no display of data in tableview cells. In first VC i made a property of NSManaged object, and in second VC i retrieve that object, put it in tableview but no data is displayed. This is crucial to my understanding about how tableview can read data from core data, thank you a lot.
First VC
import UIKit
import CoreData
class ViewController: UIViewController {
@IBOutlet weak var nameField: UITextField!
@IBOutlet weak var passField: UITextField!
var item = [NSManagedObject]()
override func viewDidLoad() {
    super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
}
@IBAction func saveInfo(sender: UIButton) {
    let appDel: AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
    let context: NSManagedObjectContext = appDel.managedObjectContext
    //add new user
    let newUser = NSEntityDescription.insertNewObjectForEntityForName("Users", inManagedObjectContext: context)
    newUser.setValue(nameField.text, forKey: "username")
    newUser.setValue(passField.text, forKey: "passwords")
    // add the info to the entity
    do{
        try context.save()
    }catch{
        print("Error, data not saved!")
    }
    // retrieve data
    do{
        let request = NSFetchRequest(entityName: "Users")
        let results = try context.executeFetchRequest(request)
        if results.count > 0 {
            for item in results as! [NSManagedObject]{
                let name = item.valueForKey("username")
                let password = item.valueForKey("passwords")
                print(name!, password!)
        }
        }
        }catch{
        print("Erorr, data not read!")
    }
    nameField.text = ""
    passField.text = ""
    }// end of button function
}
Second VC aka Tableview
import UIKit
import CoreData
class TableViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var tableView: UITableView!
var bridge: ViewController = ViewController()
var array = [NSManagedObject]()
override func viewDidLoad() {
    super.viewDidLoad()
    self.array = self.bridge.item
    self.tableView.delegate = self
    self.tableView.dataSource = self
}
override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}
func tableView(tableView:UITableView, numberOfRowsInSection section:Int) -> Int
{
    return array.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
    let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath)
    let person = array[indexPath.row]
    cell.textLabel!.text = person.valueForKey("username") as? String
    return cell
}
}
 
    