还是进制之间的转换,这次全部是自己写的没有用Java的Integer
来源:互联网 发布:阿里云销售好做吗 编辑:程序博客网 时间:2024/06/05 11:39
package HuaWei;
/**
* 进制之间的转换
*@author yg
*@date 2016-7-20
*/
public class NumChange {
/**
* 十进制转化为二进制
* @param h
*/
public void TenToTwo(int h) {
boolean flag = true;
String str = "";
int yushu = 0;// 求余数
int shang = 0;// 求shang
flag = true;
while (flag) {
yushu = h % 2;// 求余数
shang = h / 2;// 求shang
str = yushu + str;
System.out.println(str);
if (shang >= 2) {// 继续迭代
h = shang;
flag = true;
} else {
if (shang == 0)
break;
flag = false;
str = shang + str;
}
}
System.out.println(" " + str);
}
/**
* 十进制转换为八进制
*/
public void TenToEight() {
int n = 8;
int shang = 0;
int yushu = 0;
String str = "";
do {
shang = n / 8;
yushu = n % 8;
str = "" + yushu + str;
System.out.println("shang=" + shang + " yushu=" + yushu
+ " str=" + str);
if (yushu == 0 || shang < 8) {
str = shang + "" + str;
break;
}
n = shang;
} while (shang > 8);
str = "0" + str;
System.out.println("str=" + str);
}
/**
* 十进制转换为十六进制
*/
public void TenToSixteen() {
int n = 160;
int shang = 0;
int yushu = 0;
String str = "";
do {
shang = n / 16;
yushu = n % 16;
if (yushu >= 10) {
char ch1 = (char) (yushu + 55);
System.out.println("ch1=" + ch1);
str = "" + String.valueOf(ch1) + str;
} else {
str = "" + yushu + str;
}
if (shang < 16 || yushu == 0) {
if (shang >= 10) {
char ch2 = (char) (shang + 55);
str = String.valueOf(ch2) + str;
break;
} else {
str = shang + str;
}
}
} while (shang > 16);
str = "0x" + str;
System.out.println("Str=" + str);
}
/**
* 二进制转换为十进制
*/
public void TwoToTen() {
String s2 = "1110";
String s[] = s2.split("");
for (int i = 0; i < s.length; i++) {
System.out.println(" " + s[i]);
}
System.out.println("------------------" + s.length);
int value = 0;
for (int i = 1; i < s.length; i++) {
int a = Integer.parseInt(s[i]);
value = (int) (value + Integer.valueOf(s[i])
* Math.pow(2, (double) (s.length - i - 1)));
}
System.out.println("value=" + value);
}
/**
* 十六进制转换为十进制
*/
public void SixteenToTen() {
String s16 = "oxA12";
String s2 = s16.substring(2);
char[] cArray = s2.toCharArray();
int value = 0;
for (int i = 0; i < cArray.length; i++) {
char ch = cArray[i];
int n = 0;
System.out.println(ch);
if ((ch >= 65) && (ch <= 90)) {
n = (int) (ch - 55);
value = (int) (value + n
* Math.pow((double) 16,
(double) (cArray.length - 1 - i)));
System.out.println("cccccccc" + value);
continue;
}
n = Integer.parseInt(String.valueOf(ch));
System.out.println("n=" + n);
value = (int) (value + n
* Math.pow((double) 16, (double) (cArray.length - 1 - i)));
}
System.out.println("value " + value);
}
/**
* 八进制转换为十进制
*/
public void EightToTen() {
String str = "041";
String s8 = str.substring(1);
int value = 0;
char[] cArray = s8.toCharArray();
for (int i = 0; i < cArray.length; i++) {
char ch = cArray[i];
System.out.println(ch);
int n = Integer.parseInt(String.valueOf(ch));
value = (int) (value + n * Math.pow((8), cArray.length - 1 - i));
}
System.out.println("value=" + value);
}
}
/**
* 进制之间的转换
*@author yg
*@date 2016-7-20
*/
public class NumChange {
/**
* 十进制转化为二进制
* @param h
*/
public void TenToTwo(int h) {
boolean flag = true;
String str = "";
int yushu = 0;// 求余数
int shang = 0;// 求shang
flag = true;
while (flag) {
yushu = h % 2;// 求余数
shang = h / 2;// 求shang
str = yushu + str;
System.out.println(str);
if (shang >= 2) {// 继续迭代
h = shang;
flag = true;
} else {
if (shang == 0)
break;
flag = false;
str = shang + str;
}
}
System.out.println(" " + str);
}
/**
* 十进制转换为八进制
*/
public void TenToEight() {
int n = 8;
int shang = 0;
int yushu = 0;
String str = "";
do {
shang = n / 8;
yushu = n % 8;
str = "" + yushu + str;
System.out.println("shang=" + shang + " yushu=" + yushu
+ " str=" + str);
if (yushu == 0 || shang < 8) {
str = shang + "" + str;
break;
}
n = shang;
} while (shang > 8);
str = "0" + str;
System.out.println("str=" + str);
}
/**
* 十进制转换为十六进制
*/
public void TenToSixteen() {
int n = 160;
int shang = 0;
int yushu = 0;
String str = "";
do {
shang = n / 16;
yushu = n % 16;
if (yushu >= 10) {
char ch1 = (char) (yushu + 55);
System.out.println("ch1=" + ch1);
str = "" + String.valueOf(ch1) + str;
} else {
str = "" + yushu + str;
}
if (shang < 16 || yushu == 0) {
if (shang >= 10) {
char ch2 = (char) (shang + 55);
str = String.valueOf(ch2) + str;
break;
} else {
str = shang + str;
}
}
} while (shang > 16);
str = "0x" + str;
System.out.println("Str=" + str);
}
/**
* 二进制转换为十进制
*/
public void TwoToTen() {
String s2 = "1110";
String s[] = s2.split("");
for (int i = 0; i < s.length; i++) {
System.out.println(" " + s[i]);
}
System.out.println("------------------" + s.length);
int value = 0;
for (int i = 1; i < s.length; i++) {
int a = Integer.parseInt(s[i]);
value = (int) (value + Integer.valueOf(s[i])
* Math.pow(2, (double) (s.length - i - 1)));
}
System.out.println("value=" + value);
}
/**
* 十六进制转换为十进制
*/
public void SixteenToTen() {
String s16 = "oxA12";
String s2 = s16.substring(2);
char[] cArray = s2.toCharArray();
int value = 0;
for (int i = 0; i < cArray.length; i++) {
char ch = cArray[i];
int n = 0;
System.out.println(ch);
if ((ch >= 65) && (ch <= 90)) {
n = (int) (ch - 55);
value = (int) (value + n
* Math.pow((double) 16,
(double) (cArray.length - 1 - i)));
System.out.println("cccccccc" + value);
continue;
}
n = Integer.parseInt(String.valueOf(ch));
System.out.println("n=" + n);
value = (int) (value + n
* Math.pow((double) 16, (double) (cArray.length - 1 - i)));
}
System.out.println("value " + value);
}
/**
* 八进制转换为十进制
*/
public void EightToTen() {
String str = "041";
String s8 = str.substring(1);
int value = 0;
char[] cArray = s8.toCharArray();
for (int i = 0; i < cArray.length; i++) {
char ch = cArray[i];
System.out.println(ch);
int n = Integer.parseInt(String.valueOf(ch));
value = (int) (value + n * Math.pow((8), cArray.length - 1 - i));
}
System.out.println("value=" + value);
}
}
0 0
- 还是进制之间的转换,这次全部是自己写的没有用Java的Integer
- 光做不总结是没有用的
- 有时候,着急是没有用的
- JAVA Integer进制的转换
- (POJ 1011)题目接上条,这次是自己写的哈哈,看起来像是蛮笨的方法。
- Java中定时器的用法(转帖,自己还没有用过)
- Java中Integer、int、String类型之间的转换关系
- 这次是 真的吗?
- 一个自己都没有用过的函数
- String与Integer 之间的转换
- String、int、Integer之间的转换
- string,int ,Integer之间的转换方法
- 有没有用j2ee架构写的个人简历
- Java的解释执行是先全部解释完后再执行还是边解释边执行?
- 还是自己写的东西比较放心
- 黑马程序员--还是另偶头疼的javascript。。。这次是正则表达式
- 追逐的是时间还是自己?
- java 进制之间的转换
- 梯度下降法学习笔记
- H - 不要62
- 通过YYtext实现文本点击(类似微博效果)
- Linux系统编程--文件(一)
- UML学习
- 还是进制之间的转换,这次全部是自己写的没有用Java的Integer
- 大话设计模式02----商场促销-策略模式
- 杭电2602
- mysql存储引擎
- 点亮一个发光二极管
- 284. Peeking Iterator
- python chr()和ord()函数
- jQuery Mobile 表单基础
- HTML5 表单新增元素与属性