「java大小端转换」java小端转大端
今天给各位分享java大小端转换的知识,其中也会对java小端转大端进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、Java中几种常用数据类型之间转换的方法
- 2、java怎样将大写字母转换成小写字母
- 3、c语言和java 使用socket通信的时候 数据大小端转换的问题
- 4、java 怎么把一个字节 高低位互换
- 5、java中如何进行大小写字母转换?
- 6、java 中怎样将 bytes 转换为 long 类型
Java中几种常用数据类型之间转换的方法
下面给你例举10种Java中几种常用的数据类型之间转换方法:
1. short--int 转换
exp: short shortvar=0;
int intvar=0;
shortvar= (short) intvar
2. int--short 转换
exp: short shortvar=0;
int intvar=0;
intvar=shortvar;
3. int-String 转换
exp: int intvar=1;
String stringvar;
Stringvar=string.valueOf (intvar);
4. float-String 转换
exp: float floatvar=9.99f;
String stringvar;
Stringvar=String.valueOf (floatvar);
5. double-String 转换
exp double doublevar=99999999.99;
String stringvar;
Stringvar=String.valueOf (doublevar);
6. char-String 转换
exp char charvar=’a’;
String stringvar;
Stringvar=String.valueOf (charvar);
7 String-int、float、long、double 转换
Exp String intstring=”10”;
String floatstring=”10.1f”;
String longstring=”99999999”;
String doubleString=”99999999.9”;
Int I=Integer.parseInt (intstring);
Float f= Integer.parseInt (floatstring);
Long lo=long. parseInt (longstring);
Double d=double. parseInt (doublestring);
8 String-byte、short 转换
Exp String s=”0”;
Byte b=Integer.intValue(s);
Short sh=Integer.intValue(s);
9 String-char 转换
Exp String s=”abc”;
Char a=s.charAt(0);
返回字符a
10 String--boolean 转换
String s=”true”;
Boolean flag=Boolean.valueOf (“s”);
java怎样将大写字母转换成小写字母
1、具体代码如下,字符串中大、小写互转
1)输入
第一行只有一个整数m(m=10),表示测试数据组数。
接下来的m行,每行有一个字符串(长度不超过100)。
2)输出
输出互换后的字符串,每组输出占一行。
输入字符串,字符串可以求出字符串的长度以及在各个索引的值,Java也有专门的判断是不是大小写以及转换成大小写的方法
输出结果:如下图
扩展资料:
java中把一个字符串中大写字母转换为小写,小写字母转换为大写的思路
但是需要注意的是如果某个字符串定义为String类型,那么这个串就不能改变了,如果需要改变,那么应该使用StringBuffer
代码中exChange()能够得到正确的结论,exChange2()不能得到正确的结论,如果某个字符串定义为String类型,那么这个串就不能改变了
c语言和java 使用socket通信的时候 数据大小端转换的问题
我也搞网络编程搞好久了,大小端这个问题倒是没有遇到过啊,我同事做Java,我做IOS都一样的,都是小端的。
建议你用抓包软件抓下包看看,还有就是注意发送时数据对齐问题,不同的系统可能一样的类型长度就不一样,比如在mac系统中long型有8字节,但是在IOS、VC中就只有四个字节,一般使用socket发送数据时都是打包发送的(头部一般都是固定的结构体),这个问题必须要注意
java 怎么把一个字节 高低位互换
用Java的字节流,读取一个int的4个字节,然后转换。 比如读取的数据是:
byte1 byte2 byte3 byte4
在其实这是C++的 byte4 byte3 byte2 byte1
那你可以用位运算转成Java中的对应的整数:
(byte1 0xff)0 + (byte2 0xff)8 + (byte3 0xff) 16 +(byte4 0xff)24 这样转换后的,就是Java中的整数了。
java中如何进行大小写字母转换?
java提供了upper和lower方法来进行字母大小写的转换,实例如下:
//把一个字符串中的大写转为小写,小写转换为大写:思路1
public static String exChange(String str){
StringBuffer sb = new StringBuffer();
if(str!=null){
for(int i=0;istr.length();i++){
char c = str.charAt(i);
if(Character.isUpperCase(c)){
sb.append(Character.toLowerCase(c));
}else if(Character.isLowerCase(c)){
sb.append(Character.toUpperCase(c));
}
}
}
return sb.toString();
}
//把一个字符串中的大写转为小写,小写转换为大写:思路2
public static String exChange2(String str){
for(int i=0;istr.length();i++){
//如果是小写
if(str.substring(i, i+1).equals(str.substring(i, i+1).toLowerCase())){
str.substring(i, i+1).toUpperCase();
}else{
str.substring(i, i+1).toLowerCase();
}
}
return str;
}
java 中怎样将 bytes 转换为 long 类型
方法有以下三种:
1、不借助其他任何已经有的类,直接进行转换。
2、借助java.nio.ByteBuffer实现,只要将byte[]转换为ByteBuffer就可以实现所有primitive类型的数据读取。
3、借助java.io.DataInputStream实现,只要将byte[]转换为DataInputStream就可以实现所有primitive类型的数据读取。
具体步骤如下:
1、/**
* 将字节数组转为longbr
* 如果input为null,或offset指定的剩余数组长度不足8字节则抛出异常
* @param input
* @param offset 起始偏移量
* @param littleEndian 输入数组是否小端模式
* @return
*/
public static long longFrom8Bytes(byte[] input, int offset, boolean littleEndian){ long value=0; // 循环读取每个字节通过移位运算完成long的8个字节拼装
for(int count=0;count8;++count){ int shift=(littleEndian?count:(7-count))3;
value |=((long)0xff shift) ((long)input[offset+count] shift);
} return value;
}
2、/**
* 利用 {@link java.nio.ByteBuffer}实现byte[]转long
* @param input
* @param offset
* @param littleEndian 输入数组是否小端模式
* @return
*/
public static long bytesToLong(byte[] input, int offset, boolean littleEndian) {
// 将byte[] 封装为 ByteBuffer
ByteBuffer buffer = ByteBuffer.wrap(input,offset,8); if(littleEndian){ // ByteBuffer.order(ByteOrder) 方法指定字节序,即大小端模式(BIG_ENDIAN/LITTLE_ENDIAN)
// ByteBuffer 默认为大端(BIG_ENDIAN)模式
buffer.order(ByteOrder.LITTLE_ENDIAN);
} return buffer.getLong();
}
3、public void test() throws IOException {
String input="net.gdface.facelog.dborm.person.FlPersonBeanBase";
byte[] md5 = getMD5(input.getBytes());
System.out.printf("md5 [%s]\n",toHex(md5));
// 三种方式运算结果对比验证
DataInputStream dataInput = new DataInputStream(new ByteArrayInputStream(md5));
long l1 = dataInput.readLong();
long l2 = dataInput.readLong();
System.out.printf("l1=0x%x l2=0x%x,DataInputStream\n", l1,l2);
long ln1 = bytesToLong(md5,0, false);
long ln2 = bytesToLong(md5,8, false);
System.out.printf("ln1=0x%x ln2=0x%x,ByteBuffer\n", ln1,ln2);
long ll1 = longFrom8Bytes(md5,0, false);
long ll2 = longFrom8Bytes(md5,8, false);
System.out.printf("ll1=0x%x ll2=0x%x\n", ll1,ll2);
}
}
java大小端转换的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java小端转大端、java大小端转换的信息别忘了在本站进行查找喔。
发布于:2022-11-29,除非注明,否则均为
原创文章,转载请注明出处。