草庐IT

$二进制

全部标签

java - 确定十进制值的最快最有效的方法是 Java 中的整数

给定一个名为sizeValue且sizeValue包含非0的double变量,确定sizeValue包含的最有效方法是什么值是整数吗?目前我正在使用大小值%1==0还有其他更快的方法吗? 最佳答案 尝试Math.ceil:privatestaticbooleanisInt(doublex){returnx==Math.ceil(x);}编辑我用以下方法做了一些基准测试:privatestaticbooleanisInt1(doublex){returnx==(int)x;}privatestaticbooleanisInt2(dou

java - 在 java 中将美元(大十进制)转换为美分(整数)的最佳方法是什么?

我必须将我的Web应用程序与支付网关集成。我想输入以美元为单位的总金额,然后将其转换为美分,因为我的支付网关库接受以美分为单位的金额(Integer类型)。我发现Java中的BigDecimal是操纵货币的最佳方式。目前我将输入设为50美元并将其转换为Integer,如下所示:BigDecimalrounded=amount.setScale(2,BigDecimal.ROUND_CEILING);BigDecimalbigDecimalInCents=rounded.multiply(newBigDecimal("100.00"));IntegeramountInCents=bigD

java:将二进制字符串转换为int

我正在尝试将几个二进制字符串转换回int。但是它并没有转换我所有的二进制字符串,给我留下了一个java.lang.NumberFormatException异常。这是我的带有3个二进制字符串的测试代码:publicclassBin{publicstaticvoidmain(Stringargvs[]){StringbinaryString;binaryString=Integer.toBinaryString(~0);//binaryString=Integer.toBinaryString(~1);//binaryString="1010";intbase=2;intdecimal=

Java Unicode 到十六进制字符串

这个问题在这里已经有了答案:Getunicodevalueofacharacter(6个答案)关闭9年前。下面的代码将Unicode字符串作为காsysout=newPrintStream(System.out,true,"UTF-8");sysout.println("\u0B95\u0bbe");通过将கா作为输入,我可以得到\u0B95和\u0bbe的十六进制值吗?PS:这是泰米尔语。

java - -128 在 Java 中作为二进制文字

基于java中的byte类型是带符号的8位two'scomplement整数,为什么第二种声明字节的方法不起作用?byteok=-128;bytenotok=0b10000000;我的理解是1000000应该是-128但java指示上面的notok变量应该是int而不是byte 最佳答案 0b10000000是一个int文字(=0b00000000000000000000000010000000),等于+128。byte占8位,不能表示+128。但是,您可以按如下方式实现:bytenotok=(byte)0b10000000;

java - 如何存储可能包含二进制数据的 Http Response?

正如我在apreviousquestion中所描述的那样,我有一个任务要写一个代理服务器。它现在部分工作,但我在处理gzip信息时仍然有问题。我将HttpResponse存储在一个字符串中,看来我无法使用gzip压缩的内容来做到这一点。但是,header是我需要解析的文本,它们都来自同一个InputStream。我的问题是,我必须做什么才能正确处理二进制响应,同时仍将header解析为字符串?>>在查看代码之前,请先查看下面的编辑。这是Response类的实现:publicclassResponse{privateStringfullResponse="";privateBuffere

java - 如何在 Java 中将 64 位宽度的二进制字符串转换为 long?

我想把一个64位宽的二进制字符串转成long,有一个静态方法:Long.parseLong(Strings,intradix)这样做,但它不适合我的情况。问题是我的二进制字符串是机器风格的longint。例如:1111111111111111111111111111111111111111111111111111111110000101代表-123,但是这个方法把它识别为一个巨大的正数,这让我很烦恼,我该如何解决这个问题?我必须编写一个函数来完成补码吗? 最佳答案 你可以使用BigIntegerpublicstaticvoidmai

java - 将float和double转换为Java中的位和十六进制表示

如何获取double或float的单个位(或整个变量)?例如如果我有floata=0.5;我希望String等于:“00111111000000000000000000000000”或十六进制:“F000000” 最佳答案 对于Java,float在32位上像int,而double在64位上像long。找到这些数字的二进制表示,您需要:floata=0.5f;intbits=Float.floatToIntBits(a);String.format("%32s",Integer.toBinaryString(bits)).repla

无法在Docker容器中执行二进制文件(“不允许操作”)

问题我正在建造一个码头容器(基于RHEL),其中包括来自第三方存储库的自定义二进制文件。在容器中执行二进制文件时,我会收到一个非描述错误:”Operationnotpermitted".分析DockerfileDockerfile很简单。FROMdockerregistry.example.com/rhel7:latestRUNyum-yinstall\curl\custom-package&&\curl-Lsqhttps://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64>/sbin/dumb-

java - 在java中的有序列表中进行二进制搜索

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预期结果。另请参阅:StackOverflowquestionchecklist关闭9年前。Improvethisquestion我正在寻找一种在java中实现代码的方法,它的工作方式与有序ArrayList中的二进制搜索相同,但对于有序列表谢谢