JAVA
                
              간단한 컬렉션 contains 성능테스트
                달사자!
                 2020. 11. 11. 11:43
              
                          
            /**
	 * 간단한 컬렉션 contains 성능테스트
	 *  -  https://dzone.com/articles/java-collection-performance
	 *
	 * @param args
	 */
	public static void main(String[] args) {
		long min = 999999999;
		long max = 0;
		for (int t = 0; t < 200; t++) {
			int cnt = 30000;
			LinkedHashSet<String> badwords = new LinkedHashSet<String>(); //min:500 ||  max:15200
			//ArrayList<String> badwords = new ArrayList<String>(); min:148100 ||  max:1110400
			//TreeSet<String> badwords = new TreeSet<String>(); //min:3000 ||  max:31000
			for (int i = 1; i <= cnt; i++) {
				badwords.add(String.valueOf(i));
			}
			long startMs = System.currentTimeMillis();
			long start = System.nanoTime();
			badwords.contains(String.valueOf(cnt));
			long end = System.nanoTime();
			long endMs = System.currentTimeMillis();
			long du = end - start;
			System.out.println(du);
			if (du > max) {
				max = du;
			}
			if (du < min) {
				min = du;
			}
			System.out.println("ms: " + (endMs - startMs));
		}
		System.out.println("\n\n");
		System.out.println("min:" + min + " ||  max:" + max);
	}