如何檢查兩個字串中的字元是相同的?
如何理解這題呢?比如說,字串“沉默王二”和“沉王二默”就用了同樣的字符,對吧?比如說,字符串“沉默王二”和“沉默王三”用的字符就不同,理解了吧?
public class CheckSameCharsInString { public static void main(String[] args) { sameCharsStrings("沉默王二", "沉王二默"); sameCharsStrings("沉默王二", "沉默王三"); } private static void sameCharsStrings(String s1, String s2) { Set<Character> set1 = s1.chars().mapToObj(c -> (char) c).collect(Collectors.toSet()); System.out.println(set1); Set<Character> set2 = s2.chars().mapToObj(c -> (char) c).collect(Collectors.toSet()); System.out.println(set2); System.out.println(set1.equals(set2)); } }
輸出結果如下所示:
[默, 沉, 王, 二] [默, 沉, 王, 二] true [默, 沉, 王, 二] [默, 沉, 三, 王] false
上面的程式碼用到了Stream 流,看起來很陌生,但很好理解,就是把字串拆成字符,然後收集到Set 中,Set 是一個不允許有重複元素的集合,所以就把字串中的不同字元收集起來了。
以上是java如何檢查兩個字串中的字元是相同的的詳細內容。更多資訊請關注PHP中文網其他相關文章!