This paper comprehensively studies a content-centric mobile network based on a preference learning framework, where each mobile user is equipped with finite-size cache. We consider a practical scenario where each user requests a content file according to its own preferences, which is motivated by the existence of heterogeneity in file preferences among different users. Under our model, we consider a single-hop-based device-to-device (D2D) content delivery protocol and characterize the average hit ratio for the following two file preference cases: the personalized file preferences and the common file preferences. By assuming that the model parameters such as user activity levels, user file preferences, and file popularity are unknown and thus need to be inferred, we present a collaborative filtering (CF)-based approach to learning these parameters. Then, we reformulate the hit ratio maximization problems into a submodular function maximization and propose several greedy algorithms to efficiently solve the cache allocation problems. We analyze the computational complexity of each algorithm along with the corresponding level of the approximation that it can achieve compared to the optimal solution. Using a real-world dataset, we demonstrate that the proposed framework employing the personalized file preferences brings substantial gains over its counterpart for various system parameters.