十进制的String数字串转换成十进制整数
当字符串变量s
为一串十进制数字序列时,可以利用Integer.parseInt(s)
函数将其转换为十进制int型整数,利用Long.parseLong(s)
函数将其转换为十进制long型整数。
程序样例
Java代码如下:
public class Main {
public static void main(String[] args) {
String s="123456";
int i=Integer.parseInt(s);//将字符串s转换为10进制int型变量
System.out.println(i);
long l=Long.parseLong(s);//将字符串s转换为10进制int型变量
System.out.println(Long.parseLong(s));
}
}
输出为
123456
123456
任意进制的String数字串转换成十进制整数
当字符串变量s
为一串r
进制数字序列时,可以利用Integer.valueOf(s,r)
函数将其转换为十进制int型整数,利用Long.valueOf(s,r)
函数将其转换为十进制long型整数。
程序样例
Java代码如下:
public class Main {
public static void main(String[] args) {
String s="1aA";
int i=Integer.valueOf(s,16);//将字符串s转换为16进制int型变量
System.out.println(i);
long l=Long.valueOf(s,16);//将字符串s转换为16进制long型变量
System.out.println(l);
}
}
输出为
426
426
十进制整数转换为二、八、十、十六进制字符串
利用java中自带的进制转换函数进行转换
程序样例
public class Main {
public static void main(String[] args) {
int i=1234567;
System.out.println(Integer.toBinaryString(i));//转换为二进制
System.out.println(Integer.toOctalString(i));//转换为八进制
System.out.println(Integer.toString(i));//转换为十进制
System.out.println(Integer.toHexString(i));//转换为十六进制
}
}
输出为:
100101101011010000111
4553207
1234567
12d687
可以利用printf函数进行转换
如果只要求输出,不对转换后的字符串进行其他操作,可以利用printf函数进行转换,关于printf函数的输出形式和参数类型可参考C语言中printf和scanf函数基本的参数类型和输出形式
程序样例
public class Main {
public static void main(String[] args) {
int i=1234567;
//printf函数无法转换为二进制
System.out.printf("%o\n",i);//转换为八进制
System.out.printf("%d\n",i);//转换为十进制
System.out.printf("%x\n",i);//转换为十六进制
}
}
输出为:
4553207
1234567
12d687