编程算法基础-2.2串与数值的转换
来源:互联网 发布:淘宝人气店铺 编辑:程序博客网 时间:2024/06/16 09:49
2.2串与数值的转换
串与整数的转换
把任何东西转化为串,只要把它加上一个空串,任何值和串相加,结果都是串。
Integer.parseInt将串转换为整数
有时也采用直接的逻辑方式
串转整数
String s = “9527”;
/*串转整数String s = "9527";*/ package StringToInteger; public class StringToInt { public static void main(String[] args) { String s = "9527"; /* int n = s.charAt(0)-'0';//ASCII-48,0的ASCII码为48 n = n*10 + (s.charAt(1)-'0');//为了不被下一个数字覆盖掉,把n*10再加上新的数字 n = n*10 + (s.charAt(2)-'0'); */ //写成循环如下 int n=0; for(int i=0;i<s.length();i++){ n = n*10 + (s.charAt(i)-'0'); } System.out.println(n); }}
9527
黑洞数
int n = 5346;
6543-3456=3087;//最大-最小,不足补零
8730-0378=8352;
8352-2358........
最终我们会陷入到某一个数字再也出不来!
/*黑洞数int n = 5346;6543-3456=3087;//最大-最小,不足补零8730-0378=8352;8352-2358........最终我们会陷入到某一个数字再也出不来!*/ package StringToInteger; import java.util.Arrays; public class BlackHoleNumber { public static void main(String[] args) { int n = 9527; while(true){ char c[] = (n+"").toCharArray();//把数字转为char数组 Arrays.sort(c);//排序,从小到大 int min = 0;//求最小值 for(int i=0;i<c.length;i++){ min=min*10+(c[i]-'0'); } int max = 0;//求最大值 for(int i=c.length-1;i>=0;i--){//注意起始点为c.length-1 max=max*10+(c[i]-'0'); } int n2 = max-min; System.out.println(max+"-"+min+"="+n2); if(n2==n){ break;//如果进入黑洞循环,跳出 } n = n2; } }}
9752-2579=71737731-1377=63546543-3456=30878730-378=83528532-2358=61747641-1467=6174
翻译
把大写数字翻译为整数:
一四零零六 ==> 14006
二五七 ==> 257
/*翻译把大写数字翻译为整数:一四零零六 ==> 14006二五七 ==> 257*/package StringToInteger; public class TranslateStringToNumber { public static void main(String[] args) { String s = "一二三四五六七八九零";// String s = "a"; int n = 0;//初始化结果整数 for(int i=0;i<s.length();i++){ if(translateToNumber(s.charAt(i))=='e'){//默认返回e System.out.println("输入有误。"); break; }else{ n=n*10+(translateToNumber(s.charAt(i))-'0');//不断地乘10+新的数 } } System.out.println(n); } //将大写汉字转化为数字的方法 public static char translateToNumber(char a){ switch (a) { case '一': return '1'; case '二': return '2'; case '三': return '3'; case '四': return '4'; case '五': return '5'; case '六': return '6'; case '七': return '7'; case '八': return '8'; case '九': return '9'; case '零': return '0'; default: return 'e'; } }}
1234567890
0 0
- 编程算法基础-2.2串与数值的转换
- 算法基础——2.2串与数值转换
- 算法基础——2.2串与数值转换
- 编程算法基础-作业第02讲-串与数值转换_翻译
- Shell编程:字符串与数值之间的转换与计算
- Java_语法基础_基本数值与包装对象的转换
- 数值类型与String的转换
- 字符串与数值之间的相互转换
- 字符串与数值间的数据转换
- 字符串与数值相互转换的函数
- 字符串与数值相互转换的函数
- string对象与数值的转换
- 字符串与数值之间的转换
- GPS数值与距离的转换
- c++字符串与数值之间的转换
- C++数值与字符串之间的转换
- 数值与字符(串)类型转换
- 字符串与数值转换
- java知识点总结之四修饰符与类的成员
- ios view的frame和bounds之区别(位置和大小)
- springmvc登录的时候,发送请求j_spring_security_check
- 马航 失联飞机 猜想
- JAVA生成条形码
- 编程算法基础-2.2串与数值的转换
- OpenStack云计算快速入门之二:OpenStack安装与配置
- POI 单元格垂直居中,相同内容的单元格合并
- 两种情况下的Android应用退出代码
- Audio Debugging
- python django model 字段类型说明(自己收集的仅供参考)
- win .net 问题汇总
- 关于Android WIFI扫猫周期
- 乐商商品分类 可按照SQL 同一个表、单表 联合查询 导出商品分类数据