I would suggest two approaches:
1. You use Network Analyst to build a network dataset (ND) from your raw street feature class. Choosing the "Any Vertex" connectivity would create a junction point feature at each street intersection which you can export and use just like any other point feature class in ArcGIS.
Start with this tutorial, the best getting started guide ever imo and then go through the ND building part of the ArcTutor.
You can use the Network Identify Tool to click on the network edges (after adding the ND into the ArcMap session) and this will tell you what other network edges connect to the edge you clicked on (ie adjacent edges). However, there are no ways to build reports on number of connections in an automated fashion (building connectivity matrix in terms of graph theory). You would need to use arcpy for working with the geometries of street feature class for that; ND connectivity matrix is not exposed for the users though.
2. You use pure Python library for building the graph and finding the connectivity matrix yourself. networkx is the one I usually use; it's the best library I've used so far. This can import the shapefile directly and build the graph for you. You can do with this graph almost anything you could possibly need. An alternative would be to use arcpy to build the connectivity matrix / list with arcpy (using the lines' end/start vertices) and then feed this into the networkx.
Go for the alt.1 if you need a way to visualize your ND and interrogate it in ArcMap as a GIS analyst; go for the alt.2 if you feel that you will need to generate many reports processing the whole network (be aware that you would need to learn Python and networkx).