It is often advised to use non-WWW url, so that there is less redirects and link juice does not leak, since people most often type non-WWW urls.
But who cares what the user types? Links are not indexed from what user type into the address bar but what can be found on the web in form of anchor tags right?
Some of those tags you got a control over (your own website, advertisement,..). The others are typed by users, yes, but they are parsed by the service, where the user types them - Facebook etc. For Facebook to recognize text as a URL, you have to use www. prefix and many other services auto prepend www too.
So correct me if I am wrong, but most links, that you have no control over, are WWW variants and therefore from a perspective of SE crawler, running WWW version of your site will produce less 301s. User typing the url into his browser will get one more 301 from non-WWW to WWW, but that has no relevance to page rating.