猿问

以下Java代码中,== a 关于引号的问题

这是一个很简单的统计字符串a出现次数的程序

我的问题是 if (s.charAt(i) == 'a') { 这一行,,为什么 == 'a' 单引号就可以正确匹配,而 "a" 双引号就不可以,为什么??

// 定义一个字符串
		String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";
        
        // 出现次数
		int num = 0;
        
         // 循环遍历每个字符,判断是否是字符 a ,如果是,累加次数
		for (int i = 0; i < s.length(); i++ )
		{
            // 获取每个字符,判断是否是字符a
			if (s.charAt(i) == 'a') {
                // 累加统计次数
				num++; 
			}
		}
		System.out.println("字符a出现的次数:" + num);


Brander_PY
浏览 1200回答 1
1回答

Caballarii

单引号是char,双引号是字符串,char作为基础类型,是用==比较的,String的比较需要调用equals方法
随时随地看视频慕课网APP

相关分类

Java
我要回答