Java程序检查两个数字的二进制表示形式是否为字谜
如果两个数字的二进制表示形式具有相同的0'a和1's,则它们是anagram。一个例子如下:
Number 1 = 3 Binary representation of Number 1 = 0011 Number 2 = 12 Binary representation of Number 2 = 1100
这两个数字是字谜。
演示此的程序如下所示-
示例
public class Example {
public static void main (String[] args) {
long x = 12, y = 3;
if(Long.bitCount(x) == Long.bitCount(y))
System.out.println("Binary representations of " + x + " and " + y + " are anagrams");
else
System.out.println("Binary representations of " + x + " and " + y + " are not anagrams");
}
}上面程序的输出如下-
Binary representations of 12 and 3 are anagrams
现在让我们了解上面的程序。
定义了x和y的值。然后,对位表示中的1进行计数。如果它们相等,则x和y的二进制表示形式是字谜,否则不是。证明这一点的代码片段如下所示-
long x = 12, y = 3;
if(Long.bitCount(x) == Long.bitCount(y))
System.out.println("Binary representations of " + x + " and " + y + " are anagrams");
else
System.out.println("Binary representations of " + x + " and " + y + " are not anagrams");热门推荐
10 毛笔哥哥结婚祝福语简短
11 向国庆送祝福语简短
12 建队节祝福语简短
13 朋友喜得外孙简短祝福语
14 小店营业的祝福语简短
15 餐饮生日祝福语简短独特
16 鲜花英语祝福语卡片简短
17 男朋友暴富祝福语简短
18 婶婶拜年祝福语大全简短