Java 最常用类(前100名)来自一万个开源项目

时间:2022-04-09 16:31:01

大部分的 Java 软件开发都会使用到各种不同的库。近日我们从一万个开源的 Java 项目中进行分析,从中提取出最常用的 Java 类,这些类有来自于 Java 的标准库,也有第三方库。每个类在同一个项目中只计数一次,下面的列表中显示前 100 名的类。

以下列表中按使用最多的类进行排序,第三个数值表示 10000 个项目里使用到该类的项目数,而完整的列表请看 here.

  1. java.util.ArrayList(6958)

  2. java.io.IOException(6866)

  3. java.util.List(6784)

  4. java.util.HashMap(5590)

  5. java.util.Map(5413)

  6. java.io.File(5097)

  7. java.io.InputStream(4234)

  8. java.util.Set(3915)

  9. java.util.Arrays(3884)

  10. java.util.Iterator(3856)

  11. java.util.Collections(3643)

  12. java.util.Date(3461)

  13. java.util.HashSet(3278)

  14. java.io.BufferedReader(3257)

  15. java.util.Collection(3192)

  16. java.net.URL(3168)

  17. java.io.FileInputStream(3044)

  18. java.io.InputStreamReader(3023)

  19. org.junit.Test(3008)

  20. java.io.FileOutputStream(2843)

  21. java.io.FileNotFoundException(2669)

  22. java.io.OutputStream(2563)

  23. java.util.regex.Pattern(2469)

  24. java.io.Serializable(2437)

  25. java.util.LinkedList(2372)

  26. java.text.SimpleDateFormat(2245)

  27. java.util.Properties(2190)

  28. java.util.Random(2171)

  29. java.lang.reflect.Method(2141)

  30. java.io.ByteArrayOutputStream(2112)

  31. java.util.regex.Matcher(2012)

  32. android.os.Bundle(2007)

  33. java.util.logging.Logger(1999)

  34. java.io.UnsupportedEncodingException(1968)

  35. org.junit.Before(1920)

  36. java.util.Comparator(1896)

  37. java.io.ByteArrayInputStream(1868)

  38. java.io.PrintWriter(1862)

  39. java.util.Calendar(1854)

  40. android.app.Activity(1843)

  41. java.net.MalformedURLException(1828)

  42. android.content.Context(1780)

  43. android.view.View(1731)

  44. java.util.Locale(1719)

  45. java.util.Enumeration(1709)

  46. java.util.Map.Entry(1705)

  47. java.io.FileWriter(1677)

  48. java.io.FileReader(1651)

  49. android.util.Log(1614)

  50. android.content.Intent(1601)

  51. java.lang.reflect.InvocationTargetException(1594)

  52. java.util.logging.Level(1557)

  53. java.lang.reflect.Field(1499)

  54. java.io.StringWriter(1499)

  55. android.widget.TextView(1442)

  56. java.util.LinkedHashMap(1409)

  57. java.io.Reader(1390)

  58. java.net.URI(1377)

  59. java.io.Writer(1339)

  60. java.text.ParseException(1318)

  61. junit.framework.TestCase(1318)

  62. java.io.OutputStreamWriter(1295)

  63. java.io.StringReader(1279)

  64. java.io.BufferedWriter(1265)

  65. java.util.Vector(1254)

  66. java.util.StringTokenizer(1251)

  67. java.text.DateFormat(1246)

  68. java.util.concurrent.TimeUnit(1237)

  69. java.io.BufferedInputStream(1235)

  70. java.util.TreeMap(1227)

  71. org.xml.sax.SAXException(1218)

  72. javax.servlet.http.HttpServletRequest(1175)

  73. java.io.PrintStream(1168)

  74. java.util.TreeSet(1160)

  75. android.widget.Toast(1157)

  76. java.util.Hashtable(1154)

  77. java.lang.reflect.Constructor(1139)

  78. java.net.URLEncoder(1134)

  79. java.security.NoSuchAlgorithmException(1134)

  80. org.w3c.dom.Document(1130)

  81. android.widget.Button(1129)

  82. org.junit.After(1128)

  83. javax.servlet.http.HttpServletResponse(1109)

  84. java.awt.Color(1099)

  85. java.net.URISyntaxException(1085)

  86. javax.servlet.ServletException(1081)

  87. javax.xml.parsers.DocumentBuilderFactory(1076)

  88. java.lang.annotation.Retention(1075)

  89. java.security.MessageDigest(1072)

  90. java.util.concurrent.Executors(1062)

  91. java.net.UnknownHostException(1057)

  92. org.slf4j.Logger(1054)

  93. java.sql.SQLException(1043)

  94. org.slf4j.LoggerFactory(1042)

  95. java.util.UUID(1040)

  96. java.net.InetAddress(1026)

  97. junit.framework.Assert(1011)

  98. android.view.ViewGroup(1005)

  99. java.util.concurrent.ConcurrentHashMap(1001)

  100. java.awt.event.ActionEvent(995)