Java解决统计包含给定前缀的字符串
01 题目
-
给你一个字符串
jewels
代表石头中宝石的类型,另有一个字符串stones
代表你拥有的石头。stones
中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。字母区分大小写,因此
"a"
和"A"
是不同类型的石头。示例 1:
输入:jewels = "aA", stones = "aAAbbbb" 输出:3
示例 2:
输入:jewels = "z", stones = "ZZ" 输出:0
提示:
1 <= jewels.length, stones.length <= 50
jewels
和stones
仅由英文字母组成jewels
中的所有字符都是 唯一的
02 知识点
- 数组
- String函数
03 我的题解思路
public class numJewelsInStones {public static void main(String[] args) {
// 测试System.out.println(numJewelsInStones("aA", "aAAbbbb"));}public static int numJewelsInStones(String jewels, String stones) {int rs=0;//用于记录有效结构//循环石头字符长度for (int i = 0; i < stones.length(); i++) {
// 获取石头里索引值为i的二进制值int s=stones.codePointAt(i);
// 循环宝石里索引判断,但二进制值相同符合条件for (int j = 0; j < jewels.length(); j++) {int je=jewels.codePointAt(j);if(s==je) {rs++;}}}return rs;}
}