계속 문자열이다.
문자열 안에서 공간을 줄 수 있는 내용들을 연습했다.
\t : indent
\n : 줄바꿈
\\ : 만약에 \를 텍스트로 출력하고싶은경우
출력할때 그 진가가 발휘됌.
(선생님은 햄릿 팬인듯)
String text = "\t To be or not to be. \n\t \\ That's the question! \n";
System.out.println(text);

그리고 선생님이 주신 과제
인덴테이션, 줄바꿈, 필요하면 int 도 써보라고 하는데.... 걍 프로그래머 안할건데 걍 쓰면 안될까여;;; 😇😇

첫 번째 시도. int 없이 그냥 다 때려 박았음
String text1 = "\t Select an option: \n\t\t 1. Add an entry \n\t\t 2. View the database \n\t\t 3. Exit ";
System.out.println(text1);
그 결과.
요즘 컴터는 성능이 좋아 메모리 남아 도는데 기냥 정공법 쓰면 안될까여 헤헿 ^^^^^^^^

두 번째 시도. int 넣으라고 하셨으니... 막 때려넣어봅니다.
String selection = "\t Select an option: \n\t\t ";
int first = 1;
int second = 2;
int third = 3;
String firstline = ". Add an entry \n\t\t";
String secondline = ". View the database \n\t\t";
String thirdline = ". Exit";
System.out.println(selection);
System.out.println(first + firstline);
System.out.println(second + secondline);
System.out.println(third + thirdline);
그 결과
맨 첫줄만 인덴테이션 먹고
두번째부터는 아무것도 없이 냅다 줄바꿈만 함...
아니 줄바꿈을 왜이렇게 많이 한거임? ? 했는데 그게 아니라
줄 바꿈 + indentation + indentation 이다. 저 오른쪽에 파란색 한줄이 인덴테이션 1칸임... 후... 🤦


세번째, 선생님꺼 보고 따라 쓰기
String prompt = "Select an option:";
String option1 = "Add an entry";
String option2 = "View the database";
String option3 = "Exit";
int value1 = 1;
int value2 = 2;
int value3 = 3;
String menu = "\t" + prompt+ "\n";
menu += "\t\t" + value1 + ". " + option1 + "\n";
menu += "\t\t" + value2 + ". " + option2+ "\n";
menu += "\t\t" + value3 + ". " + option3+ "\n";
// menu = menu + prompt + value1 + option1;
System.out.println(menu);
그 결과.
인덴테이션 예쁘게 나오고 줄바꿈도 예쁘게 나왔다.
int 넣고 뭔가 쿵짝쿵짝 하는데 저 menu 변수부터 +=가 이해되지 않아 챗지피티와 심화 학습 ㄱ

여기서 문자열 += 어쩌구는 이어붙인다(concatenate) 는 의미
그래서 +=를 잘 쓰면,, 뭐 결국 메모리 애끼자고 하는 짓이것지유?
String s = "Hola";
s += " Bola!";
System.out.println(s);
1) s에 "Hola"를 assign 해준 후
2) s 와 " Bola!" 를 연결해준 후
3) s 출력

연습 1.
String a = "dogs ";
String b = "cats ";
String c = "birds";
String result = a;
result += b;
result += c;
System.out.println(result);
애초에 a 를 넣고, b와 c를 덧붙여 준 셈이 됨.

연습 2
String word1 = "Red";
String word2 = "Green";
String word3 = "Blue";
String sentence = word1 + ", ";
sentence += word2 + ", ";
sentence += word3 + "!";
System.out.println(sentence);
거기에다가 잘 섞으면 중간에 필요한 부호를 추가할 수 있음. --> 출력값의 가독성이 올라감?

연습 3 부호 넣기 연습 22222
String a = "dogs ";
String b = "cats ";
String c = "birds";
String result1 = a + ", ";
result1 += b + ", ";
result1 += c;
System.out.println(result1);

연습 4
String first = "Apple";
String second = "Banana";
String third = "Cherry";
String line = "";
line += second;
line += " & ";
line += first;
line = third + " - " + line;
System.out.println(line);
처음 line 변수에 쌍따옴표 값을 넣은것
String line = " "
얘는 빈 문자열로 시작한다는 걸 알린다고 하는데,굳이 넣을 필요도 없다고 한다.
근데 일단 나는 왜 필요한지 필요없는지 구분이 안되는 상태이므로 일단 한번 물어보고 지나간다.🤷
마지막 line = third + " - " + line: 이게 i++ 와 다른거냐고 물었더니 그렇다고 한다.
line = third + " - " + line 의 경우, line에 새로운 문자열 값을 덮어씌우는것이라고
i++는 숫자가 점점 올라가는것
근데 그러고 보면 사실 큰 줄기에서는 새로운 값으로 덮어 씌면서 값을 업데이트 한다는 측면에서는 동일하지 않나? 하고 그냥 지나가자... ㅎ.... ^^^^^^

쌤이 수업시간에 concatenate, concatenate 하시는거 매번 무슨의미일까 와닿지 않았는데. (검색하니 사슬, 연결 이라고 나와서 그렇게만 생각하고 실제로 이게 왜 그런 의미인지 몰랐음) 이번에 보니까 쵸큼 알겠다. 근데 그냥 add up 하면 안되나 아니면 다른거. 더 쉬운 단어도 있을 것 같은데 concatenate쓴거 너무 장벽 같다. 프로그래밍은 어쩜 이렇게 기초 텀들도 싸가지가 없냐능.
여튼 진도 오지게 안나가지만 일단 오늘도 해피코딩.... 😊
'콤퓨타 > Programming) 왕초보 자바' 카테고리의 다른 글
| 08. (Strings) User Input (0) | 2025.06.18 |
|---|---|
| 07. (Strings) Format Specifiers (1) | 2025.06.10 |
| 05. (Strings) Joining Strings (2) | 2025.06.04 |
| (번외) 프로세스 (5) | 2025.05.29 |
| 04. (Variables) Converting Temperatures (1) | 2025.05.28 |