在線急求:Java怎么把數字字符型數組中的數字字符轉為整型?




  RT  例如 char ch[]={'1','1','0','1'},怎么把‘1’和‘0’轉換為整型的,用來加減運算和位運算??

13 个解决方案

#1


Integer.parseInt()

#2


1樓正解

#3


直接相減
char a='3';
int num='3'-'0';
if (num<0||num>9)
   num=0;

#4


只會土辦法
public static void main(String[] args) {
char ch[] = { '1', '1', '0', '1' };
int i[] = new int[ch.length];
for (int j = 0; j < ch.length; j++) {
i[j] = Integer.parseInt(String.valueOf(ch[j]));
}
for (int j = 0; j < i.length; j++) {
System.out.println(i[j]);
}
}

#5


引用 3 樓 ouyangyh 的回復:
直接相減
char a='3';
int num='3'-'0';
if (num <0||num>9)
  num=0;

這個怎么理解?

#6


char a='3';
int num='3'-'0';  // 自動轉換
if (num <0||num>9)
  num=0; 

char a='3';
一般情況下 Integer.parseInt(a) 
就可以了~

#7


Integer.parseInt(String s) ;

#8


java 里有這個方法,public static int parseInt(String s)
也就是說,如果有 
String s="1";

int a=Integer.parseInt(s);
//a=1

#9


6樓的效率最高,一般能比Integer.parseInt(String s)快8-10倍。

#10



for(char c : ch){
    int i = c-'0';
}

#11


1、4、7、8樓的Integer.parseInt(String s)方法中需要注意的是接收參數是String,需要把char轉成String。
3樓那個直接是ASCII碼轉數字,原理看ASCII碼表就成

#12


char要轉型干嗎....
本來就是數值....

#13


六樓比較靠譜,在java中,char本來就是整型的,只是AscII而已,六樓的int mun = '3'-'0'只是把3對應的ascII碼減去0對應的ascII,由於ASCII中數字的碼值是連續的,所以得到的當然是int 3了

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com