整数字符串之间的转化

来源:互联网 发布:java代码性能测试工具 编辑:程序博客网 时间:2024/05/16 05:04

字符串转化为整数减 '0';整数转化为字符串 加'0',再逆序。

1. 字符串转化为整数

public class String2Int{    public static void main(String[] args){int i = 0;int j=0;int sum=0;int sum1=0;char[] a={'1','2','3','4','5','\0'};String b="123456";while(a[i]!='\0'){sum = sum*10+(a[i]-'0');i++;}for(j=0;j<b.length();j++){sum1 = sum1*10+(b.charAt(j)-'0');}System.out.println(sum);System.out.println(sum1);    }}

上面的代码中,如果输入字符串出现空格,则输出结果出错,所以改进如下:

package com.algorithm.program;public class String2Int{  public static void main(String[] args){int i = 0;int j=0;int sum=0;int sum1=0;char[] a={'1','2','3',' ','4','5','\0'};String b="1234 56";while(a[i]!='\0'){    while ((a[i] < '0') || (a[i] > '9'))  //如果当前字符不是数字,则跳过    {                               i++;    }sum = sum*10+(a[i]-'0');i++;}for(j=0;j<b.length();j++){    while ((b.charAt(j) < '0') || (b.charAt(j) > '9'))  //如果当前字符不是数字,则跳过    {                               j++;    }sum1 = sum1*10+(b.charAt(j)-'0');}System.out.println(sum);System.out.println(sum1);    }}

2.整数转化为字符串

#include<iostream>using namespace std;int main(void){    int num=12345, i=0, j=0;    char temp[10], str[10];        //将整数转化成字符串,此字符串为逆序,后面需反转过来     while(num)    {        temp[i++] = num%10 + '0';        num = num/10;    }    temp[i]=0;    cout<<temp<<endl;    i=i-1;         //反转字符串     while(i>=0)    {        str[j++] = temp[i--];            }    str[j]=0;       cout<<str<<endl;    system("pause");    return 0;}



0 0