怎样把string类型转换成int类型

时间:2022.10.01 发布人:jimi940739

怎样把string类型转换成int类型

已解决问题

谷歌jimi940739用户在2022.10.01提交了关于“重生之贼行天下怎样把string类型转换成int类型”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2024-05-16T06:19:37。希望大家能够帮助她。

详细问题描述及疑问:期待您的答案,当代劳模,所有人都应该向你学习 !

希望以下的回答,能够帮助你。

第1个回答

用户名:ofjfv  

聚1、把char型转换成int类型。

for(inti=0;i<str.length();i明航她左功++)

{

char顶反吗她temp_char=str.charAt(i);

//把字符转换成数字方法一

inttemp_int=temp_char-'0';

//把字符转换成数字方法二

inttemp_int=In章资teger.parseI做向背似色犯块nt(String.valueOf(temp_c画位措har));

}

第一种办法:通过charA建现皮下溶兰苗吧t(i),把字符串的每位变成char型,然后用当前字符春选大完着达排矿减去字符0(tem抓米宪p_char-'0'),得到当前字符的int值。

第二种办法:把字符再转成字符串,然后再强制转换成int型。

2、把字符串拆分成一位一位的

第一种方法:循环后cha增丰孩管管rAt(i);

注意:charAt(i)得到的是字符串对应的每位字符,可是不能直接转成int,转成int依然是ASCII值。

二种方法:char[]temp=str.toCharArray();

注意:char[]里的内容不是字符串的每位字符,而是每位字符的ASCII值。

具体如下:

packagecjl;

量importja体我va.util.Scanner;

/**

一维码有一种编码是ean13,是一措速混相串13位数字。其中第13位是校车耐验码,作用是校验前面12个数字是否正确。

校验方法如下:

1、前12位数字从左起,将所有的奇穗逗数位相加得出一个数a,将所有的偶数位相加得出一个数b

2、将数b乘以3再与a相加得到数c

3、用10减去数c的个位数,如果结果不为10则校验码为结果本身,如果为10则校验码为0

请在控制台任意输入一个12位数字,然后输出校验码

authorff

/

publicclassCheckCode{

publicvoidcheckCode(Stringstr)

{

intcheckCode=0;

inta=0;//奇数位的和

intb=0;但具么普//偶数位的和

f文编激量剂力or(inti=0;i<str.length();i+源宜弱教希+)

{

chartemp_char=str.charAt(i);

//把字符转换成数字方法一

inttemp_int=temp_char-'0';

//把字符转换成数字方法二

//inttemp_int=Integer.parseInt(String.valueOf(temp_char));

//System.out.println("temp_char="+temp_char);

//System.out.println("temp__int="+temp_int);

if((i+1)%2==0)//偶数位

{

b+=(int)temp_int;

}

else//奇数位

{

a=a+(int)temp_int;

}

}

intc=a+b*3;

intc_gw=c%10;

intd=10-c_gw;

//System.out.println("a="+a+"b="+b+"c="+c+"c_gw="+c_gw+"d="+d);

if(d==10)

{

checkCode=0;

}

else

{

checkCode=d;

}

System.out.println("checkCode="+checkCode);

}

publicvoidInput()

{

while(true){

Scannerscanner=newScanner(***.in);

System.out.println("请输入一个12位的数字。。。。。。");

Stringstr=scanner.nextLine();

if((str.length()==12)&&(str.matches("[0-9]+")))

{

checkCode(str);

bre**;

}

}

}

/**

paramargs

/

publicstaticvoidmain(String[]args){

CheckCodecodeVo=newCheckCode();

codeVo.Input();

}

}

运行结果:

请输入一个12位的数字。。。。。。

111111111111

checkCode=6

扩展**:

char是计棚族渣算机编程语言(c、c++、j**a、VFP等)链悄中可容纳单个字符的一种基本**类型。

char是一个**类型,作用是定义字符型变量(单个或是字符串)。

比方int是整形**,inta=3;这里int是类型,a是整型变量,3是赋值;

chars='A';char是字符类型,s是字符型变量,A是赋值给变量s;

chars[]="cprogram";char是字符类型,s[]是字符型数组,"cprogram"是赋给数组的值。