kh14일차
2022. 7. 7. 18:21ㆍ코딩/Java
objectApi
kh.java.func
StringClass
package kh.java.func;
import java.util.Random;
import java.util.StringTokenizer;
public class StringClass {
public void test1() {
//문자열 변경을 위한 StringBuffer사용
StringBuffer sb = new StringBuffer();
System.out.println("문자열 길이 : "+sb.length());
sb.append("hi");//현재 저장된 문자열에 매개변수로 전달한 문자를 추가
System.out.println(sb.toString());
sb.append(" 안녕");
System.out.println(sb.toString());
System.out.println("문자열 길이 : "+sb.length());
sb.append(" test");
System.out.println(sb.toString());
sb.insert(3," 삽입구문"); //첫번쨰 매개변수 위치에, 두번째 매개변수 값을 삽입
System.out.println(sb.toString());
sb.insert(7," 여기 ");
System.out.println(sb.toString());
sb.replace(0,2, "수정구문");//문자열중 0번째부터 2번째앞까지를 "수정구문"으로 대체
System.out.println(sb.toString());
sb.delete(5, 8);
System.out.println(sb.toString());
sb.reverse();
System.out.println(sb.toString());
sb.reverse();
System.out.println(sb.toString());
Random r = new Random();
StringBuffer joinCode = new StringBuffer();
for(int i = 0; i<6;i++) {
int num = r.nextInt(10);
joinCode.append(num);
}
System.out.println("회원가입 코드 ["+joinCode.toString()+"]");
}
public void test2() {
String str = "학생1/서울/백수";
String[] arr = str.split("/");// /을 기준으로 문자열을 자름
System.out.println("배열길이 : "+arr.length);
for(int i=0;i<arr.length;i++) {
System.out.println(arr[i]);
}
String str1 = "AbcdEfg";
System.out.println(str1.toUpperCase());
System.out.println(str1.toLowerCase());
}
public void test3() {
String str = "학생1/서울/백수";
StringTokenizer sT = new StringTokenizer(str,"/");
while(sT.hasMoreTokens()) {
String str1 = sT.nextToken();
System.out.println(str1);
}
// System.out.println("지금 토큰이 남아있는지 체크 : "+sT.hasMoreTokens());
// System.out.println("남아있는 토큰 수 : "+sT.countTokens());
// String str1 = sT.nextToken();
// System.out.println(str1);
// System.out.println("지금 토큰이 남아있는지 체크 : "+sT.hasMoreTokens());
// System.out.println("남아있는 토큰 수 : "+sT.countTokens());
// String str2 = sT.nextToken();
// System.out.println(str2);
// System.out.println("지금 토큰이 남아있는지 체크 : "+sT.hasMoreTokens());
// System.out.println("남아있는 토큰 수 : "+sT.countTokens());
// String str3 = sT.nextToken();
// System.out.println(str3);
// System.out.println("지금 토큰이 남아있는지 체크 : "+sT.hasMoreTokens());
// System.out.println("남아있는 토큰 수 : "+sT.countTokens());
}
}
TestClass
package kh.java.func;
public class TestClass implements Cloneable{
// @Override
// public String toString() {
// return "저는 TestClass입니다.";
// }
@Override
public Object clone() throws CloneNotSupportedException{
return super.clone();
}
}
kh.java.run
Start
package kh.java.run;
import kh.java.func.StringClass;
import kh.java.func.TestClass;
import kh.java.lee.Calc;
public class Start {
public static void main(String[] args) {
// // TODO Auto-generated method stub
// TestClass tc = new TestClass();
// // 참조형 이고 주소값이 담겨있음
// System.out.println(tc.toString());
// // toString 참조형 객체의 정보 출력
// System.out.println(tc);// 메소드 호출하지 않을시 자동으로 toString호출
// TestClass tc1 = new TestClass();
// System.out.println(tc.hashCode());
// System.out.println(tc1.hashCode());
// TestClass tc2 = tc;//얕은복사//데이터는 그대로 주소만복사
// System.out.println(tc2.hashCode());
// //문자열 비교 == -> equals
// int num =10;
// Calc c = new Calc();
// int sum = c.add(100, 200);
// System.out.println(sum);
StringClass sc = new StringClass();
sc.test1();
}
}
testAPI
kh.java.lee
Calc
package kh.java.lee;
public class Calc {
public int add(int num1,int num2) {
int sum = num1 + num2;
return sum;
}
}
ApiTest
package kh.java.func;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
public class ApiTest {
public void math() {
// 객체를 생성하지 않고 바로 사용
System.out.println(Math.abs(10));
System.out.println(Math.abs(-10));// 절대값
// 올림,버림,반올림
System.out.println(Math.ceil(10.1));// 올림
System.out.println(Math.floor(10.9));// 버림
System.out.println(Math.round(10.5));// 반올림
// 1.3456->1.35
// 1.3456-> 134.56 -> 135/100.0 -> 1.35
System.out.println(Math.round(1.3456 * 100) / (double) 100);
// 숫자비교
System.out.println(Math.max(50, 30));// 매개변수로 전달한 두수중 큰수 리턴
System.out.println(Math.min(50, 30));// 매개변수로 전달한 두수중 작은수 리턴
}
public void date() {
Date today = new Date();
System.out.println(today);
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String todayStr = format1.format(today);
System.out.println(todayStr);
SimpleDateFormat format2 = new SimpleDateFormat("yyyy년MM월dd일 HH시mm분ss초 EEE요일");
String todayStr2 = format2.format(today);
System.out.println(todayStr2);
}
public void calendar() {
Calendar today = Calendar.getInstance();
//Calendar 클래스의 생성자의 접근제어지시자가 Protected
//대신 getInstance()메소드를 통해서만 객체 생성이가능
//정보가져오는방법 today.get(정보종류);
System.out.println(today.get(Calendar.YEAR));
System.out.println(today.get(Calendar.MONTH)+1);//0~11월
System.out.println(today.get(Calendar.DATE));
System.out.println(today.get(Calendar.AM_PM));//AM=0 ,PM=1
System.out.println(today.get(Calendar.MINUTE));//분
System.out.println(today.get(Calendar.SECOND));//초
System.out.println(today.get(Calendar.MILLISECOND));//ms초
System.out.println(today.get(Calendar.DAY_OF_WEEK));//요일(1:일요일 ,7:토요일)
System.out.println("===============================================");
Calendar day1 = Calendar.getInstance();
System.out.println(day1.get(Calendar.MONTH)+1);//7
System.out.println(day1.get(Calendar.DATE));//7
System.out.println(day1.get(Calendar.DAY_OF_WEEK));//5
//날짜랑 시간정보 변경
day1.set(Calendar.MONTH, 10);//11월로 변경
day1.set(Calendar.DATE, 18);//18일로 변경
System.out.println(day1.get(Calendar.MONTH)+1);//11
System.out.println(day1.get(Calendar.DATE));//18
System.out.println(day1.get(Calendar.DAY_OF_WEEK));//5
Calendar day2 = Calendar.getInstance();
long time1 = day2.getTimeInMillis();//1960년 1월 1일부터 day2까지 몇 ms가 흘렀는지 리턴
day2.set(Calendar.DATE, 8);
long time2 = day2.getTimeInMillis();
System.out.println("time1 : "+time1);
System.out.println("time2 : "+time2);
System.out.println("시간차이 :" +(time2-time1));
Date date1 = new Date(time1);
Date date2 = new Date(time2);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date1str = format.format(date1);
String date2str = format.format(date2);
System.out.println(date1str);
System.out.println(date2str);
}
public void dday() {
Scanner sc = new Scanner(System.in);
Calendar dday = Calendar.getInstance();
System.out.print("D-DAY [년도] 입력 : ");
int year = sc.nextInt();
dday.set(Calendar.YEAR, year);
System.out.print("D-DAY [월] 입력 : ");
int month = sc.nextInt();
dday.set(Calendar.MONTH, month);
System.out.print("D-DAY [일] 입력 : ");
int date = sc.nextInt();
dday.set(Calendar.DATE, date);
long time1 = dday.getTimeInMillis();
Calendar today = Calendar.getInstance();
System.out.println("오늘 날짜 : "+today.get(Calendar.YEAR)+"년"+(today.get(Calendar.MONTH)+1)+"월"+today.get(Calendar.DATE)+"일");
long time2 = today.getTimeInMillis();
System.out.println("D-DAY 날짜 : "+dday.get(Calendar.YEAR)+"년"+dday.get(Calendar.MONTH)+"월"+dday.get(Calendar.DATE)+"일");
System.out.println(Math.round((time1 - time2)));
}
}
'코딩 > Java' 카테고리의 다른 글
kh16일차(set,map,PointMgr7,StudentMgr5,Exception,io) (0) | 2022.07.11 |
---|---|
kh15일차 (Generics,List,studentMgr4,pointMgr5...) (0) | 2022.07.08 |
kh12일차 (0) | 2022.07.06 |
KH11일차 (0) | 2022.07.04 |
KH10일차 (0) | 2022.07.01 |