`
fly_宇光十色
  • 浏览: 64674 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

字符串转换数字(不使用任何类库)

    博客分类:
  • Java
阅读更多

前两天遇到一个有趣的题,让把字符串转换成数字,前提是不能使用任何封装好的类库。本来以为挺简单,但是当实际做的时候,发现还是有困难的。主要是要解决char和int进行相加的问题!

直接上代码吧!(代码里没有进行字母、最大长度等验证!有更好的方法欢迎指出)

private static int stringToNumber(String ss) throws Exception {
		
		int num = 0;
    	//char与int进行运算,char的数值要减去 48
    	//因为ASCII码中0的值是48,1就是49
    	int p = 0;
    	for (int i = ss.length()-1; i >=0 ; i--) {
			int s = ss.charAt(i)-48;
			
			if(i==ss.length()-1)
				num=s;
			else
				num+=(s*getPower(10,p));
			p++;
		}
		return num;
	}


        //求num的p次方
	private static int getPower(int num,int p) {
		if(p==0)
			return 1;
		int tmp = num;
		for(int i=1;i<=p-1;i++){
			tmp*=num;
		}
		return tmp;
	}

 

 

0
0
分享到:
评论
2 楼 fly_宇光十色 2014-06-20  
acoder 写道
    // 不做任何判断,负数等判断,就是正整数
    static int stringToNumber(String s) {
        int n = 0;
        char[] cs = s.toCharArray();
        for (char c : cs) {
            n *= 10;
            n += (c - '0');
        }
        return n;
    }

好方法!比我的高明!
1 楼 acoder 2014-06-19  
    // 不做任何判断,负数等判断,就是正整数
    static int stringToNumber(String s) {
        int n = 0;
        char[] cs = s.toCharArray();
        for (char c : cs) {
            n *= 10;
            n += (c - '0');
        }
        return n;
    }

相关推荐

    Slugify:一个将字符串转换为slug格式的类库.zip

    例如,如果一个文章标题是" Slugify:一个将字符串转换为slug格式的类库",经过Slugify处理后,可能会变成"slugify-一个将字符串转换为slug格式的类库"。 Slugify类库的使用非常简单,一般包括以下步骤: 1. **...

    C++字符串处理类库及范例

    此外,库中可能还提供了字符串的转换功能,如将字符串转换为数字类型(整型、浮点型等),或者反之,这在处理用户输入或者数据解析时非常实用。这种转换通常比直接使用`std::stringstream`更快速,更安全,因为它们...

    vc 16进制字符串转换为10进制的整数

    在VC++编程环境中,我们经常需要处理不同进制之间的转换,比如将16进制的字符串转换成10进制的整数。16进制(Hexadecimal)是一种逢16进1的计数制,它使用数字0到9以及字母A到F来表示数值,而10进制是我们日常生活中...

    java+3des加密+和字符串转换javalearnsa资料分享

    字符串转换在Java中是非常常见的任务,这包括字符串到其他数据类型的转换,如数字、日期等,以及字符编码的转换。例如,我们可能需要将字符串解析为整数或浮点数,使用Integer.parseInt()或Double.parseDouble()函数...

    Patchwork UTF-8:处理UTF-8格式字符串的便携类库

    1. **字符串转换**:可以将字符串在不同的字符编码之间转换,例如从ISO-8859-1到UTF-8,或者从GBK到UTF-8,这对于处理来自不同来源的数据非常有用。 2. **字符检测**:能够检测字符串是否是有效的UTF-8编码,避免...

    将汉字转换成为拼音c#类库

    在实现过程中,可以使用`StringBuilder`类来高效地构建返回的拼音字符串,避免频繁的字符串操作导致性能下降。为了提高代码的可维护性和可重用性,可以设计类库支持多种模式,如简拼、全拼、带声调和不带声调等。 ...

    Stringy:一个多字节支持的字符串操纵类库

    2. **丰富的操作方法**:Stringy提供了大量的静态和实例方法,用于执行各种字符串操作,例如拼接、切割、替换、查找、大小写转换、去除空白字符、格式化数字等。这些方法的命名直观且符合PHP的命名约定,易于理解和...

    Float Convert delphi浮点数转换成字符串..rar

    2. **FloatToStr** 函数:这是专门为浮点数到字符串转换设计的函数,它可以保留指定的小数位数。 ```delphi var MyFloat: Double; begin MyFloat := 3.141592653589793; Writeln(FloatToStr(MyFloat)); // 输出 ...

    Patchwork UTF-8:处理UTF-8格式字符串的便携类库.zip

    Patchwork UTF-8是一个便携式C++类库,专门设计用于处理UTF-8编码的字符串。UTF-8是一种广泛使用的Unicode字符编码方案,能够表示Unicode标准中的所有字符,包括各种语言的字母、数字和符号。这个类库的出现是为了在...

    使用NPOI类库执行Excel导入

    使用NPOI时,需要正确处理这些类型,如将数字字符串转换为数值,或将日期字符串转换为DateTime对象。 3. **异常处理**:文件不存在、格式错误或者权限问题等情况都可能导致运行时异常,确保代码中有适当的错误处理...

    PHP4的JSON类库

    - `decode` 方法则用于将JSON字符串转换回PHP的数据结构。例如,JSON字符串 `{"name": "John", "age": 30}` 解码后会得到一个关联数组 `$result = array('name' =&gt; 'John', 'age' =&gt; 30)`。 - 在使用时,`decode` ...

    PHP实现将科学计数法转换为原始数字字符串的方法

    这个函数的主要目的是将输入的科学计数法数字字符串转换为非科学计数法的普通数字字符串。以下是对这个函数的逐行解析: 1. `if (stripos($num,’e’)===false) return $num;`: 这一行检查输入的数字字符串是否包含...

    公共方法类库dll,转换文件格式,处理字符串,处理图片,处理文件等

    13.StringDeal.cs 专门用于对于字符串的处理如截取、过滤、数据类型转换等操作 14.SystemConfigInfo.cs 专门用于得到操作系统的相应数据如CUP使用率、硬盘使用情况等 15.ValidatePost.cs 专门用于数据的验证如邮箱...

    C#字符串处理

    使用 `System.Text.Encoding` 类库中的 `GetBytes` 方法可以将字符串转换为字节数组:`byte[] byteStr = System.Text.Encoding.Default.GetBytes(str);` 反向转换则使用 `GetString` 方法:`string str = System....

    人民币大小写转换类库

    例如,使用字典映射数字到大写字符,然后根据数值构造相应的字符串。 5. **使用示例**:在实际应用中,开发人员可以调用类库提供的方法,如`convert_to_chinese(1234.56)`,得到结果`'壹仟贰佰叁拾肆元伍角陆分'`。...

    18.C#字符串和正则表达式参考手册 影印版

    3.6.1 把字符串转换成数字 79 3.6.2 把字符串转换为日期和时间 82 3.7 在集合与数组之间移动字符串 84 3.7.1 数组 85 3.7.2 ArrayList对象 86 3.7.3 IDictionary对象 88 3.8 小结 88 第4章 国际化 89 4.1 Unicode 89...

    Java期末复习-常用类库

    以上就是Java常用类库的一些核心知识点,涵盖了字符串处理、系统交互、国际化、日期时间、数学计算、大数处理、对象复制、数组操作、比较和正则表达式以及定时任务等多个方面,这些都是Java编程中不可或缺的基础工具...

    Java IO操作和将字符串解析为数值数组

    在Java中,我们可以使用`split()`方法将字符串分割成数组,再通过类型转换将每个元素转换为数值类型。例如,如果有一个逗号分隔的数字字符串,可以这样做: ```java String str = "1,2,3,4,5"; String[] parts = ...

    LitJson类库,下载直接使用好吃不贵

    例如,你可以使用`ToJson`方法将一个C#对象转化为JSON字符串,而`ToObject`方法则可以将JSON字符串转换为对应的C#对象。这对于处理网络请求的响应数据或者存储游戏状态非常有用。 ```csharp using LitJson; // 将...

    .net通用类常用CS类库

    5. **对象转换类**:`.NET`框架提供了`Convert`类,用于不同数据类型之间的转换,如字符串转数字、日期等。此外,`JsonConvert`类(在`Newtonsoft.Json`库中)用于JSON数据的序列化和反序列化。 6. **文件操作类**...

Global site tag (gtag.js) - Google Analytics