프로그래밍/Java 36

Java 언어로 함수 프로그래밍 미리 해보기

Java 7에 포함되기로 했다가 취소된 함수형 프로그래밍(closure) 미리 맛보기 관련 자료 [1] http://javac.info/ [2] http://stronglytypedblog.blogspot.com/2010/06/lambdas-in-java-preview-part-1-basics.html ) [3] http://www.infoq.com/articles/lambdas-java-analysis [4] http://wiki.java.net/bin/view/JDK/ClosuresSyntaxInJava7 [5] http://www.ibm.com/developerworks/java/library/j-jtp04247.html [6] http://www.java.net/pub/pq/242 [7] http..

스트링 리스트에서 스트링 찾기(find) with Java

[파일명: TestStringFindInList.java]------------------------------------------------ import java.util.*; public class TestStringFindInList { public static void main(String[] args) { String[] data = { "하나", "둘", "셋", "넷", "다섯", "여섯" }; ArrayList words = new ArrayList(); for (int i = 0; i < data.length; i++) { words.add(data[i]); } int where; System.out.print("vector: "); printArray(words); where = fi..

스트링 벡터에서 스트링 찾기(find) with Java

[파일명: TestStringFindInVector.java]------------------------------------------------ import java.util.*; public class TestStringFindInVector { public static void main(String[] args) { String[] data = { "하나", "둘", "셋", "넷", "다섯", "여섯" }; Vector words = new Vector(); for (int i = 0; i < data.length; i++) { words.add(data[i]); } int where; System.out.print("vector: "); printArray(words); where = find..

스트링 배열에서 스트링 찾기(find) with Java

[파일명: TestStringFindApp.java]------------------------------------------------ import java.util.*; public class TestStringFindApp { public static void main(String[] args) { String[] words = { "하나", "둘", "셋", "넷", "다섯", "여섯" }; int where; System.out.print("array: "); printArray(words); where = find(words, "셋"); if (where > 0) { System.out.print("발견! "); System.out.println("Next word of 셋 in array:..

스트링 배열 정렬(sorting)하기 with Java

[파일명: TestSortApp.java]------------------------------------------------ import java.util.Arrays; import java.util.Collections; import java.util.List; class TestSortApp { public static void main(String[] args) { List list = Arrays.asList(args); Collections.sort(list); System.out.println(list); } } ------------------------------------------------ 컴파일> javac TestSortApp.java 실행> java TestSortApp 하나..

Pollard's rho method 소개: 정수의 인수분해(factorizing integers) with Java

정의 (소수와 합성수) 1보다 큰 양의 정수 n에 대하여 (i) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하면, n을 합성수(合成數, composite number)라고 한다. 참고로 이 경우, a, b 중에 적어도 하나는 sqrt(n) 보다 작거나 같다. 합성수의 예로는 4, 6, 9, 24, 143 등이 있다. (ii) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하지 않으면, 즉 n을 두 양의 정수의 곱으로 표현하는 방법이 1*n과 n*1 두 가지 뿐이면, n을 소수(素數, prime number)라고 한다. 소수의 예로는 2, 3, 5, 7, 11 등이 있다. n이 소수인지 아닌지 확인하려면, n을 2 보다 크거나 같고 sqrt(n) 보다 작거..

손으로 계산하는 긴자리 곱셈표 만들기 with Java

초등학교 때 배우는 두 정수의 곱셈표를 만들어 주는 자바 애플리케이션 소스이다. /** * Filename: MakeMultTableApp.java * * Print a multiplication table. * * Compile: javac -d . MakeMultTableApp.java * Execute: java MakeMultTableApp 230 5100 * * Date: 2009/03/06 * Author: pkim (AT) scripts.pe.kr */ import java.io.*; import java.util.*; public class MakeMultTableApp { public static void printUsing() { System.out.println("Using: java..

iTexT를 이용한 RTF 파일 만들기 HelloHangul.java

/* * HelloHangul.java * * 컴파일: javac -classpath .;iText-rtf-2.1.4.jar;iText-2.1.4.jar HelloHangul.java * 실행: java -cp .;iText-rtf-2.1.4.jar;iText-2.1.4.jar HelloHangul * */ import java.io.FileNotFoundException; import java.io.FileOutputStream; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.Paragraph; import com.lowagie.text.rtf.RtfWriter2; pu..