【转】byte[]数组比较(内容比较)--不错

原文网址:http://amanda.blog.51cto.com/7238262/1215118

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://amanda.blog.51cto.com/7238262/1215118

两个数组之间的比较(比较两个数组的内容):

方法一:

直接调用java API 进行比较

1:将byte[]数组转换为String(前提:byte[]数组b1  b2不为空)

2:调用equals()方法比较,相等返回true,否则返回false

//1:

String s1 = Arrays.toString(byte[] b1);

String s2 = Arrays.toString(byte[] b2);

//2:

s1.equals(s2)

方法二:

1:确保两个数组分别不为空,否则,返回false

2:先比较长度,如果长度不相等,返回false

3: 长度相等的前提下,分别取出数组下标内容,循环比较,当有不同时返回false,并退出

public static boolean compereByteArray(byte[] b1, byte[] b2) {

//1:
       if(b1.length == 0 || b2.length == 0 ){
           return false;
       }

//2:
       if (b1.length != b2.length) {
           return false;
       }

//3:
       boolean isEqual = true;

for (int i = 0; i < b1.length && i < b2.length; i++) {
           if (b1[i] != b2[i]) {
               System.out.println("different");
               isEqual = false;
               break;
           }
       }
       return isEqual;
   }

本文出自 “截取字符串” 博客,请务必保留此出处http://amanda.blog.51cto.com/7238262/1215118

时间: 2024-11-03 21:51:27

【转】byte[]数组比较(内容比较)--不错的相关文章

C# 对象、文件与二进制串(byte数组)之间的转换

1.关于本文 在使用C#下的TCP(类TcpClient).UDP(类UdpClient)协议传输信息时,都需要将信息转换为byte类型的数组进行发送.本文实现了两种object与byte数组的转换和一种文件与byte数组转换的方式.基础类型的数据,可以用BitConverter类中的函数进行转换. 2.object与byte[]的相互转换:使用IFormatter的Serialize和Deserialize进行序列化与反序列化 实现这个功能,需要先引用三个命名空间:System.IO.Syst

使用buffered流结合byte数组,读入文件中的内容,包括中文字符

package com.itcast.demo05.Buffered; import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.IOException; /** * @author newcityman * @date 2019/7/28 - 16:35 * 使用buffered流结合byte数组,读入文件中的内容,包括中文字符 */public class BufferedInputStr

【转】java中byte数组与int类型的转换(两种方式)----不错

原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法,我们都知道,在socket传输中,发送.者接收的数据都是 byte数组,但是int类型是4个byte组成的,如何把一个整形int转换成byte数组,同时如何把一个长度为4的byte数组转换为int类型.下面有两种方式. 第一种方法: public static byte[] int2byte(int

Delphi Byte数组与String类型的转换

string string = AnsiString = 长字符串,理论上长度不受限制,但其实受限于最大寻址范围2的32次方=4G字节: 变量Str名字是一个指针,指向位于堆内存的字符序列,字符序列起始于@Str[1],@Str[1]偏移负16个字节的空间存储着字串长度.引用计数等信息.字符序列以NULL结束. string[n] string[n] = ShortString = 短字符串,最多容纳255个字符,实际长度是字符长度+1,是Delphi的简单类型: Str[0]存储着字符的个数,

从指定文件(字节数组)获取内容以及获取长度

package cn.felay.io; import java.io.ByteArrayInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; /** * @author <a mailto:[email protected]>felayman</a> * @t

JAVA关于byte数组与String转换的问题

1 public class ToString{ 2 public static void main(String[] args){ 3 String aa = "hellow"; 4 byte[] bb = aa.getBytes(); 5 byte[] cc = aa.getBytes(); 6 7 System.out.println(aa); 8 System.out.println(bb.toString()); 9 System.out.println(cc.toStrin

Delphi Byte数组与Int String之间的相互转换

http://www.cnblogs.com/lcw/p/3352864.html string string = AnsiString = 长字符串,理论上长度不受限制,但其实受限于最大寻址范围2的32次方=4G字节: 变量Str名字是一个指针,指向位于堆内存的字符序列,字符序列起始于@Str[1],@Str[1]偏移负16个字节的空间存储着字串长度.引用计数等信息.字符序列以NULL结束. string[n] string[n] = ShortString = 短字符串,最多容纳255个字符

ios -- NSdata 与 NSString,Byte数组,UIImage 的相互转换

---恢复内容开始--- 1. NSData 与 NSStringNSData-> NSStringNSString *aString = [[NSString alloc] initWithData:adata encoding:NSUTF8StringEncoding]; NSString->NSDataNSString *aString = @"1234abcd";NSData *aData = [aString dataUsingEncoding: NSUTF8St

Byte数组转字符串的问题

第一:需求:将文件转成byte数组,之后转成字符串返回.过滤器接收到响应内容后,需要将响应的内容转成byte数组. 第二:我刚开始的做法: Controller:byteArr = ConversionUtil.file2Byte(filePath); result = new String(byteArr,"utf-8"); filter:String content = wrapResponse.getContent();responseBodyMw = new BASE64Enc