이 주제가 이전에 다루어 졌다는 것을 알고 있지만 필요한 것을 찾지 못했습니다. 나는 알파벳의 모든 문자의 발생을 세려고 노력하고 있습니다. 사용자가 입력 한 문자열에서. 출력에는 발생하지 않더라도 26 개의 문자가 모두 포함됩니다. 따라서 발생하지 않는 문자에 0이 할당됩니다. 알파벳 배열을 반복하고 사용자 입력과 비교하여이 작업을 수행하고 있습니다.
문자를 추가하고 모든 문자를 표시하는 데 문제가 있습니다. 내 출력 결과 입력 된 모든 문자 + 1이 표시됩니다.
public class TwoArrays {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
char[] lower = new char[] {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
char[] upper = new char[] {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
System.out.println("Please enter a sentence to parse.");
String userString = input.nextLine();
for(int i = 0; i < userString.length(); i++) {
//lowercase
for(int l = 0; l < lower.length; l++) {
int counter = 0;
if(lower[l] == userString.charAt(i)) {
counter++;
System.out.println(lower[l] + ":" + counter);
}
}
//uppercase
for(int u = 0; u < upper.length; u++) {
int counter = 0;
if(upper[u] == userString.charAt(i)) {
counter++;
System.out.println(upper[u] + ":" + counter);
}
}
}
}
}
산출
Please enter a sentence to parse.
hello WORLD
h:1
e:1
l:1
l:1
o:1
W:1
O:1
R:1
L:1
D:1
향상된 루프 +를 사용하면 HashMap
배열을 포함하는 두 문자를 통합 할 수 있습니다.
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
char[] array = new char[] {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
System.out.println("Please enter a sentence to parse.");
String userString = input.nextLine();
HashMap<Character, Integer> charint = new HashMap<>();
for (Character c : userString.toCharArray()){
if (charint.containsKey(c)) charint.replace(c, charint.get(c).intValue() + 1);
else charint.put(c, 1);
}
for (int i = 0 ; i < array.length ; i++){
System.out.println(array[i] + " : " + (charint.get(array[i]) == null ? "0" : charint.get(array[i])));
}
}
산출
Please enter a sentence to parse.
Hello the world
a : 0
b : 0
c : 0
d : 1
e : 2
f : 0
g : 0
h : 1
i : 0
j : 0
k : 0
l : 3
m : 0
n : 0
o : 2
p : 0
q : 0
r : 1
s : 0
t : 1
u : 0
v : 0
w : 1
x : 0
y : 0
z : 0
A : 0
B : 0
C : 0
D : 0
E : 0
F : 0
G : 0
H : 1
I : 0
J : 0
K : 0
L : 0
M : 0
N : 0
O : 0
P : 0
Q : 0
R : 0
S : 0
T : 0
U : 0
V : 0
W : 0
X : 0
Y : 0
Z : 0
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다