Integer.toBinaryString() 的用法

这篇博客探讨了如何利用Integer类的toBinaryString方法在给定的二进制字符串数组中找到一个不在集合内的不同二进制字符串。通过遍历并检查每个可能的二进制字符串是否存在于HashSet中,最终找到并返回一个未出现的字符串。博客还介绍了Java的基本数据类型和包装类的区别,以及它们在内存中的存储位置和创建方式。
摘要由CSDN通过智能技术生成

在Integer这个包装类里面有一个toBinaryString的方法,作用是:以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式(类似还有toHexSrting()方法和toOctalString()方法)。
5851. 找出不同的二进制字符串
public String substring(int beginIndex, int endIndex)
substring() 方法返回字符串的子字符串。
beginIndex – 起始索引(包括), 索引从 0 开始。
endIndex – 结束索引(不包括)。

class Solution {
	public String findDifferentBinaryString(String[] nums) {
		HashSet<String> set = new HashSet<>();
		for (String num : nums) {
			set.add(num);
		}
		for (int i = 0;; i++) {
			if (!set.contains(Integer.toBinaryString(1 << nums.length | i).substring(1))) {
				return Integer.toBinaryString(1 << nums.length | i).substring(1);
			}
		}
	}
}

boolean,int,long,double是基本的数据类型,

Boolean,Integer,Long,Double他们是包装类,也就是说他们都是类,都有自己的行为和数据。

JAVA所有的类都默认继承字类Object(即包java.lang.object),包括你自己创建的类。
Boolean,Integer,Long,Double是java.util包中的类,它们是boolean,int,long,double相对应的包装类用以产生对应的对象。
boolean,int,long,double称基本类型,创建后置于stack(堆栈)中,存取速度很快,而其他引用对象创建后置于heap(堆)中,速度没有堆栈快。创建方法不同:
int i = 1;//此创建了一个基本类型的int对象。
Integer integer = new Integer();//此创建了一个Integer包装类的引用,在内存中的位置不同。
类似的还有char和Character、float和Float、short和Short、byte和Byte。你要记得后者用于产生对象的引用,而前者直接产生1的基本类型的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值