public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("請輸入你要查詢出現單詞或字母次數句子");
ArrayList<Object> arrayList = new ArrayList<Object>();
String f = s.nextLine();// 接收句子
System.out.println("輸入查詢的字母");
String string=s.nextLine();
// 接收單詞或字母
// 遍歷句子
for (Object v : f.toCharArray()) {
arrayList.add( v);
}
int num = 0;
Iterator<Object> a = arrayList.iterator();
while (a.hasNext()) {
if (a.next().equals(string) ){
num++;
System.out.println(num);
}
}
(-------------------------------------------------------------)
我主要是想把自己輸入的字符,然後判斷是不是有相同的,有幾個相同的然後輸出,可是總是不行,後面感覺錯了,但不知道哪兒錯了,求大神幫看下,指點指點!謝謝~
你這是2個字符串比較,你遍歷a,然後和你輸入的string用equals比較,這個條件跟你的需求完全不相符,例如你的f="我愛你中國",string=“中國”
你的比較是 “我”.equals("中國"),“愛”.equals("中國"),“你”.equals("中國"),“中”.equals("中國"),“國”.equals("中國"),除非你的string只輸入一個字,並且在f中也存在,你的num才能++;否則都為0;