Coding/언어-JAVA

JAVA 메서드 활용

꿀딴지- 2023. 8. 17. 14:05

int형 1~100사이 랜덤숫자 생성

(int) (Math.*random*() *100+1), //1~100

int형 길이(자릿수) 구하기

int length = (int)(Math.log10(num)+1);

string 출력

String.format("현재 시각은 %s시 %s분 %s초 입니다.", hour, min, sec);

hashMap 이터레이터 (Entry 사용)

Set<Map.Entry<String, Integer>> hashKeySet = hashMap.entrySet();
Iterator<Map.Entry<String, Integer>> it = hashKeySet.iterator();

Collection 초기화 시 값 넣기

HashSet<Integer> hashSet = new HashSet<Integer>(Arrays.asList(14,5,6,1,2,2,3,4,5,6,7,8,9));
HashSet<Integer> hashSet = new HashSet<Integer>(){{add(90); add(2); add(3);}};

배열 선언

String[] coffees = new String[4]; // 숫자만큼의 배열 생성, 기본타입으로 초기화됨(int = 0, boolen = false, 참조타입 = null)
String coffees[] = new String[4]; //위와 동일 가능
//String[] coffees = new String[]; //배열 사이즈 지정되어야 함

//선언과 동시에 초기화
String[] coffees = new String{"값1","값2",".."}; 
String[] coffees = new String[]{"값1","값2",".."}; //배열크기를 따로 명시하지 않음
String[] coffees = {"값1","값2",".."}
//int[] error_numbers = new int[]{}; //빈배열 선언, 요소가 들어갈 수 없는 배열

배열 출력

System.out.println(Arrays.toString(coffees))

//일반 for 문 사용
for(int i = 0; i<coffees.length; i++{
	System.out.println(coffees[i]);
}
//for each : read-only.
for(Member member:members) { // 값이 변경되는 것처럼 보이지만 for내에서만 임
   member = new Member();
   member.setName("s");
   System.out.println(member.getName());
}

배열 to ArrayList

//ex1)
String[] data= {"test1","test2","test3"};
ArrayList<String> arr = new ArrayList<String>();
Collections.**addAll**(arr , data);

//ex2)
String[] data= {"test1","test2","test3"};
List<String> arr= new ArrayList<String>();
arr = Arrays.**asList**(data);

//ex3)
String[] testArray = new String[]{"test1","test2","test3"};
List<String> testList = new ArrayList<String>();
testList.**addAll**(Arrays.asList(testArray));

ArrayList to 배열

ArrayList<Integer> arr= new ArrayList<Integer>();
arr.add(1);
arr.add(2);
arr.add(3);
Integer[] place = arr.**toArray**(new Integer[arr.size()]);

 

종류 메서드(필드)
배열 .length
문자열 .length()
ArrayList .size()

 

아스키코드 : 문자 1개를 7bit로 표현

  • 알파벳 대문자(A) : 65, 소문자(a) : 97, 숫자0 : 48
char c= 'A';
System.out.println((int)c);
c++; //'B'
String.valueOf(c) //string으로 변경

char 숫자로 변환하기

char character = str.charAt(i);
int num = Character.getNumericValue(character);
----
아스키로 연산 후 -48해도 동일

문자열 메서드

String s = "hello java and Python .!";
s.length();
s.toUpperCase();
s.toLowerCase();
s.contains("java"); //true/false 반환
s.indexOf("java"); //없으면 -1
s.lastIndexof("and");
s.startWith("I"); //true/false
s.endWith("."); //true/false

s.replace(" and", "&"); // 이전, 이후
s.substring(3) // 문자열 자르기 (시작위치) n 번쩌 index부터 출력
s.substring(s.indexOf("java"), s.indexOf(".")) // 시작위치부터 끝 위치 직전까지 잘림
s.trim(); //앞뒤 공백 제거
s.concat(",").concat(s); //문자열 더하기

//문자열 비교
String s1 = "Java";
String s2 = "Python";
s1.equals(s2); //true/false

문자열for each : https://dlee0129.tistory.com/94

'Coding > 언어-JAVA' 카테고리의 다른 글

JAVA 미니 프로젝트 : BurgerQueen  (0) 2023.08.17
JAVA Q&A  (0) 2023.08.17
JAVA 스레드(Thread) #Day10  (0) 2023.08.17
JAVA 파일입출력(File I/O) #Day9  (0) 2023.08.17
JAVA 사용자 입출력(Scanner, Printf)  (0) 2023.08.17