ACM之Java速成(4)
ACM中Java.进制转换
Java进制转换:
由于Unicode兼容ASCII(0~255),因此,上面得到的Unicode就是ASCII。
java中进行二进制,八进制,十六进制,十进制间进行相互转换
Integer.toHexString(int i)
十进制转成十六进制
Integer.toOctalString(int i)
十进制转成八进制
Integer.toBinaryString(int i)
十进制转成二进制
Integer.valueOf("FFFF",).toString()
十六进制转成十进制
Integer.valueOf("",).toString()
八进制转成十进制
Integer.valueOf("",).toString()
二进制转十进制
至于转换成二进制或其他进制,Java API提供了方便函数,你可以查Java的API手册。
以字符a的ASCII为例:
int i = 'a';
String iBin = Integer.toBinaryString(i);//二进制
String iHex = Integer.toHexString(i);//十六进制
String iOct = Integer.toOctalString(i);//八进制
String iWoKao = Integer.toString(i,3);//三进制或任何你想要的35进制以下的进制
DEC
有什么方法可以直接将2,8,16进制直接转换为10进制的吗?
java.lang.Integer类
parseInt(String s, int radix)
使用第二个参数指定的基数,将字符串参数解析为有符号的整数。
examples from jdk:
parseInt("", ) returns
parseInt("", ) returns
parseInt("-0", ) returns
parseInt("-FF", ) returns -
parseInt("", ) returns
parseInt("", ) returns
parseInt("-2147483648", ) returns -
parseInt("", ) throws a NumberFormatException
parseInt("", ) throws a NumberFormatException
parseInt("Kona", ) throws a NumberFormatException
parseInt("Kona", ) returns
进制转换如何写(二,八,十六)不用算法
Integer.toBinaryString
Integer.toOctalString
Integer.toHexString
例一:
public class Test{
public static void main(String args[]){
int i=;
String binStr=Integer.toBinaryString(i);
String otcStr=Integer.toOctalString(i);
String hexStr=Integer.toHexString(i);
System.out.println(binStr);
}
}
例二:
public class TestStringFormat {
public static void main(String[] args) {
if (args.length == ) {
System.out.println("usage: java TestStringFormat <a number>");
System.exit();
}
Integer factor = Integer.valueOf(args[]);
String s;
s = String.format("%d", factor);
System.out.println(s);
s = String.format("%x", factor);
System.out.println(s);
s = String.format("%o", factor);
System.out.println(s);
}
}
各种数字类型转换成字符串型: String s = String.valueOf( value); // 其中 value 为任意一种数字类型。 字符串型转换成各种数字类型: String s = "";
byte b = Byte.parseByte( s );
short t = Short.parseShort( s );
int i = Integer.parseInt( s );
long l = Long.parseLong( s );
Float f = Float.parseFloat( s );
Double d = Double.parseDouble( s ); 数字类型与数字类对象之间的转换: byte b = ;
Byte bo = new Byte( b );
b = bo.byteValue(); short t = ;
Short to = new Short( t );
t = to.shortValue(); int i = ;
b = bo.byteValue(); short t = ;
Short to = new Short( t );
t = to.shortValue(); int i = ;
Integer io = new Integer( i );
i = io.intValue(); long l = ;
Long lo = new Long( l );
l = lo.longValue(); float f = 169f;
Float fo = new Float( f );
f = fo.floatValue(); double d = 169f;
Double dObj = new Double( d );
d = dObj.doubleValue();
未完待续,,,
ACM之Java速成(4)的更多相关文章
- ACM之Java速成(3)
ACM中Java.大数处理 先上个代码: import java.math.*; import java.util.*; class Main{ public static void main(Str ...
- ACM之Java速成(2)
acm中Java的应用 Chapter I. Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特点: (1) 最明显的好处是,学会Java,可以参加Java Challenge ...
- ACM之Java速成(1)
这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入: 格式为:Scanner cin = new Sc ...
- 【转】Acm之java速成
这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入:格式为:Scanner cin = new Sca ...
- ACM中java的使用
ACM中java的使用 转载自http://www.cnblogs.com/XBWer/archive/2012/06/24/2560532.html 这里指的java速成,只限于java语法,包括输 ...
- ACM中java的使用 (转)
ACM中java的使用 这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入: 格式为:Scanner ...
- 极·Java速成教程 - (1)
序言 众所周知,程序员需要快速学习新知识,所以就有了<21天精通C++>和<MySQL-从删库到跑路>这样的书籍,Java作为更"高级"的语言也不应该落后, ...
- ACM之Java输入输出
本文转自:ACM之Java输入输出 一.Java之ACM注意点 1. 类名称必须采用public class Main方式命名 2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错 ...
- 极*Java速成教程 - (1)
序言 众所周知,程序员需要快速学习新知识,所以就有了<21天精通C++>和<MySQL-从删库到跑路>这样的书籍,Java作为更"高级"的语言也不应该落后, ...
随机推荐
- ubuntu中一些配置文件含义
/var/log/apache2/mod_jk.log apache2 mod_jk错误日志错误 /conf/server.xml ...
- Delphi下使用MapWinGIS控件打开GIS图层
unit Unit3; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System ...
- Lazarus中system.length说明
在system单元中我们有Length专门用来获取字符串宽度和数组宽度,下面例子来介绍他的功能. 定义: function Length( S: AStringType ):Integer; fu ...
- 用c++builder读取一个一行有多行变量的文件
文件内容如下: C DXDY.INP FILE, IN FREE FORMAT ACROSS COLUMNS for 83658 Active CellsC 2013-5-25 上午 10:43 ...
- 【重要】ASCII码表
我们在做业务项目,客户端的输入总是无法控制,有各种各样的特殊字符,这些特殊字符就要借助ASCII码表才能判断,所以我做了一张图,方便查看 为什么要搞个表出来,下面的字符串中,你看看你能否看的出来是什么 ...
- 002_base64的编码实现
一.先贴一张ASCII码的图 二.再贴一张base64转换规则的图 二.python代码实现.
- netbeans环境搭建
1.下载文件http://pan.baidu.com/s/1kUu52mV 2.安装. 3.设置字体颜色,原先的太亮,我设置了保护色,参照sublime 我设置的字体高亮效果http://pan.ba ...
- This system is not registered with RHN
在红帽EL5上运行yum,提示“This system is not registered with RHN”,意思是没有在官网上注册,不能下载RH的软件包,替代方案是采用centos源. 1.卸载r ...
- Difference between _, __ and __xx__ in Python
When learning Python many people don't really understand why so much underlines in the beginning of ...
- 20145211 《Java程序设计》第6周学习总结——三笑徒然当一痴
教材学习内容总结 I/O--InputStream与OutStream Java中I/O操作主要是指使用Java进行输入,输出操作.这与c++中的iostream并无太大区别. Java所有的I/O机 ...