The stadiums are rarely profitable. If there is no public funding, then stadiums would exist only in very few places. As far as I know majority of the stadiums in Europe are also own by municipalities.
Also are cities really investing in something better?
Oakland lost both Raiders and Warriors. It seems like Oakland spend that money on pension benefits of city employees. And they started laying off teachers. If you ask me: if you cannot spend money on schools (or anything useful) build a stadium.
But this is politic: stadiums are easy target but do know that city will probably mismanage the money any way.