1.๋ฌธ์ ์ค๋ช
(1) ์ฌ์ฉ์์ ์ด๋ฆ, ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ, ์ ํ๋ฒํธ ๊ทธ๋ฆฌ๊ณ ์ด ๊ฐ์ธ ์ ๋ณด์์ ๋ณด์ฌ์ค ๊ธ์์ ์๊ฐ ์ฃผ์ด์ก์ ๋, ํด๋น ๊ธ์๊น์ง๋ง ๋ณด์ด๊ณ ๋๋จธ์ง๋ *๋ก ๋์ฒดํ์ฌ ๋ฐํํ๋ ํจ์๋ฅผ ๊ตฌํํ๋ผ
ex) ๋์ฝ๋ฉ, 990130-1234567,010-1234-5678์ด ์ฃผ์ด์ก์ ๋ ๊ฐ๊ฐ 1, 8, 9๊ฐ์ ๊ธ์๋ง ๋ณด์ด๊ณ ๋๋จธ์ง๋ *๋ก ๋์ฒดํ์ฌ
์ถ๋ ฅํ์์ค.
// ์ฃผ์ด์ง ์ฝ๋
// getHiddenData๋ฅผ ๊ตฌํํด์ผํจ.
String name = "๋์ฝ๋ฉ"; // ์ด๋ฆ
String id = "990130-1234567"; // ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ
String phone = "010-1234-5678"; // ์ ํ๋ฒํธ
System.out.println("์ด๋ฆ: " + getHiddenData(name, 1));
System.out.println("์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ: " + getHiddenData(id, 8));
System.out.println("์ ํ๋ฒํธ: " + getHiddenData(phone, 9));
2. ๋ด๊ฐ ๋ง๋ ์ฝ๋
public static String getHiddenData(String input, int number) {
//totalNum์ input์ ์ด ๊ธธ์ด
int totalNum = input.length();
//partOfInput์ ํ์ํด์ผํ ๊ฐ์ ๊ธธ์ด
String partOfInput = input.substring(0,number);
//partOfInput์ ๋ฌธ์ ๋ณ๋ก ์ชผ๊ฐ์ ๋ฐฐ์ด์ ์ง์ด ๋ฃ์
String[] p = partOfInput.split("");
// ์ด ๊ธธ์ด๋งํ ๋ฐฐ์ด๋ ๋ง๋ฆ
String[] s = new String [totalNum];
//๋ฐฐ์ดs์์ ํ์ํด์ผํ ๊ฐ ๋ฃ๊ณ ๋๋จธ์ง๋ *๋ก ์ฑ์
for (int i = 0; i < partOfInput.length(); i++) {
s[i] = p[i];
}
for (int j = number; j < input.length(); j++) {
s[j] = "*";
}
// ๋ฐฐ์ด์ ๋ค์ ๋ฌธ์์ด๋ก ๋ฐ๊พธ์ด์ ๋ฐํ
String a = Arrays.toString(s);
return a;
}
3. ํ๋ฆฐ ์
//<๋ฐํ ๋ด์ฉ>
์ด๋ฆ: [๋, *, *]
์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ: [9, 9, 0, 1, 3, 0, -, 1, *, *, *, *, *, *]
์ ํ๋ฒํธ: [0, 1, 0, -, 1, 2, 3, 4, -, *, *, *, *]
(1) String ๋ํ +๋ฅผ ์ด์ฉํด ๋ฌธ์์ด์ ๋ฌธ์๋ฅผ ์ถ๊ฐํ ์ ์์์ ์์ง ๋ชปํ๋ค.
String s = "apple์ ์์ ๋ฌธ์๋ "
s += "a"
//s๋ฅผ ์ถ๋ ฅํ๋ฉด "apple์ ์์ ๋ฌธ์๋ a"๊ฐ ๋๋ค.
(2)Arrays.toString(๋ฐฐ์ด ์ด๋ฆ)์ ์ฐ๊ฒ ๋๋ฉด ๋ฐฐ์ด์ ๋ฌธ์์ด๋ก ๋ฐ๊ฟ ์ ์์ผ๋ ๋ฌธ์์ด์ ํํ๋ [ ] ์์ ๋ฐฐ์ด์ ์์๊ฐ ๋์ด๋ ํํ๋ก ์ ์ฅ๋๋ค. (์ด๊ฒ์ ๋ฌธ์ ๊ฐ ์ํ๋ ์ถ๋ ฅ ๊ฐ์ด ์๋๋ค.)
ex) ์์ ์ฝ๋์์ a์ "๋**"์ด ๋ค์ด๊ฐ ๊ฒ์ด ์๋๋ผ a = "[๋,*,*]"์ด ๋ค์ด๊ฐ ๊ฒ์ด ๋๋ค.
4. ํด๋ต ์ฝ๋
public static String getHiddenData(String data, int index) {
// ํ์ํด์ผํ ๋ถ๋ถ๊น์ง ์๋ผ์ ๋ฌธ์์ด์ ๋ฃ๊ธฐ
// ๋์ฝ๋ฉ -> ๋
String hiddenData = data.substring(0,index);
//์๋ฅธ ๋ถ๋ถ๋ถํฐ ์๋ ๋ฌธ์์ด ๋๊น์ง๋ *๋ก ์ฑ์ฐ๊ธฐ
for (int i = index; i < data.length(); i++) {
hiddenData +="*";
}
๊ทธ๋ฅ string์ ๋ฌธ์ +ํ๋ ๊ฒ ์ด์ฉํด์ฃผ๋ฉด ๋๋ค.