
1. 아스키코드
answer값은 누적이 되어야하므로 answer = 0 0으로 초기화 하고 숫자0~9까지 아스키코드값은 48~57이므로 x>=48 && x<= 57이 참이면 answer = answer*10 +(x-48)을 해준다.
0 = 0 * 10 + 0
1 = 0 * 10 + 1
12 = 1 * 10 + 2
120 = 12 * 10 + 0
1205 = 120 * 10 + 5
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public int solution(String s) {
int answer = 0;
for (char x : s.toCharArray()) {
if(x>=48 && x<= 57) answer=answer*10+(x-48); //x-48을 해야 실제 숫자나옴 (0=48-48)
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.nextLine();
System.out.println(T.solution(str));
}
}
2. isDigit()
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public int solution(String s) { //맨처음 0을 제외해야하니까 정수로 받아야함
String answer = "";
for (char x : s.toCharArray()) {
if(Character.isDigit(x)) //숫자인가
answer+=x; //string으로 x누적
}
return Integer.parseInt(answer);
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.nextLine();
System.out.println(T.solution(str));
}
}
String을 parsent로 변경
'Algorithm > 문제' 카테고리의 다른 글
11. 문자열 압축 (0) | 2023.05.25 |
---|---|
10. 가장 짧은 문자거리 (0) | 2023.05.24 |
8. 유효한 팰린드 롬 (0) | 2023.05.17 |
7. 회문 문자열 (0) | 2023.05.17 |
6. 중복 문자 제거 (0) | 2023.05.16 |

1. 아스키코드
answer값은 누적이 되어야하므로 answer = 0 0으로 초기화 하고 숫자0~9까지 아스키코드값은 48~57이므로 x>=48 && x<= 57이 참이면 answer = answer*10 +(x-48)을 해준다.
0 = 0 * 10 + 0
1 = 0 * 10 + 1
12 = 1 * 10 + 2
120 = 12 * 10 + 0
1205 = 120 * 10 + 5
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public int solution(String s) {
int answer = 0;
for (char x : s.toCharArray()) {
if(x>=48 && x<= 57) answer=answer*10+(x-48); //x-48을 해야 실제 숫자나옴 (0=48-48)
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.nextLine();
System.out.println(T.solution(str));
}
}
2. isDigit()
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public int solution(String s) { //맨처음 0을 제외해야하니까 정수로 받아야함
String answer = "";
for (char x : s.toCharArray()) {
if(Character.isDigit(x)) //숫자인가
answer+=x; //string으로 x누적
}
return Integer.parseInt(answer);
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.nextLine();
System.out.println(T.solution(str));
}
}
String을 parsent로 변경
'Algorithm > 문제' 카테고리의 다른 글
11. 문자열 압축 (0) | 2023.05.25 |
---|---|
10. 가장 짧은 문자거리 (0) | 2023.05.24 |
8. 유효한 팰린드 롬 (0) | 2023.05.17 |
7. 회문 문자열 (0) | 2023.05.17 |
6. 중복 문자 제거 (0) | 2023.05.16 |