Yes, it's okay to have non-Christians as friends. However, we don't want our friendships with unbelievers to hinder our relationship with God. If we have friends who encourage sinful behavior, then we need to be careful. We need to be sure we don't compromise our faith. It might mean not being friends with them anymore, or simply talking to them about what you can and cannot do. Of course, in this case you'd have to be polite and loving. Also, we should want to have non-Christian friends so that we can tell them the gospel so they might be saved.
Our model should follow biblical revelation. Let's take a look at what Jesus did. How was he towards unbelievers?
- Matt. 11:19, "The Son of Man came eating and drinking, and they say, ‘Behold, a gluttonous man and a drunkard, a friend of tax-gatherers and sinners!’ Yet wisdom is vindicated by her deeds.”
- Luke 5:29-32, "And Levi gave a big reception for Him in his house; and there was a great crowd of tax-gatherers and other people who were reclining at the table with them. 30 And the Pharisees and their scribes began grumbling at His disciples, saying, 'Why do you eat and drink with the tax-gatherers and sinners?' 31 And Jesus answered and said to them, 'It is not those who are well who need a physician, but those who are sick. 32 I have not come to call the righteous but sinners to repentance.'”
- John 2:1-2, "And on the third day there was a wedding in Cana of Galilee, and the mother of Jesus was there; 2 and Jesus also was invited, and His disciples, to the wedding."
As you can see in Matt. 11:19, Jesus was accused of being a "gluttonous man and a drunkard, a friend of tax gatherers and sinners." The simple fact is that Jesus was apparently keeping the company of unbelievers. This doesn't mean that Jesus was sinning or that he was being gluttonous or getting drunk. The point is that he was in their company enough that he was accused of being like them.
In Luke 5:29-32, Jesus went to Levi's house where there were tax gatherers and sinners. A tax gatherer was a Jew who worked for the Roman government collecting taxes in Israel. They were so hated by the Jews that they had their own category. Think about it, there were "sinners" and there were "tax gatherers." These reviled and often hated people were, apparently, found in the acquaintance of Christ himself. He didn't mind being around them, but we have to understand something very important that Jesus said. In Luke 5:32, "I have not come to call the righteous but sinners to repentance." The righteous were the self-righteous, who were too blind to recognize their own sinfulness. Jesus was saying he was talking to the sinners, those who were in need of him, those who recognized their need to be delivered from sin.
Finally, in John 2:1-2 we see that Jesus went to a wedding. There were a lot of people there, and we can be sure there were those present who were "less than sanctified." In fact, in the wedding of Cana Jesus performed his first miracle where he changeed water into wine. Jesus was not so self-righteous that he would not drink, go to weddings where unbelievers were, or hang out with people who were labeled as sinners.
So, it is okay for Christians to have non-Christian friends. But we must be careful not to compromise. Jesus was, after all, God in flesh (John 1:1; Colossians 2:9). We are not. We are fallen and sinful, and we need to be careful that we don't use our freedom to have unbelieving friends as a means by which we compromise holiness before God.