题目:
java中如何将char数组转化为String?
1.直接在构造String时建立。 char data[] = {'s', 'g', 'k'}; String str = new String(data);
2.String有方法可以直接转换。 String.valueOf(char[] chr)就可以。 如: char[] cha = {'s','g','h'}; Str
Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
Note:
The input is assumed to be a 32-bit signed integer. Your function should return 0 when the reversed integer overflows.
需要注意的:1.正负; 2.反转后前面的0要去除,如1000->1,而不是0001; 3. 没有溢出的int反转后可能溢出,应返回0
class Solution {
public int reverse(int x) {
String res = "";
String s = x+"";
if(x<0) {
res = reverse(s.substring(1));
res = del(res);
try {
return 0-Integer.parseInt(res); //parseInt溢出会有异常
}
catch(Exception e) {
return 0;
}
}
else {
res = reverse(s);
res = del(res);
try {
return Integer.parseInt(res);
}
catch(Exception e) {
return 0;
}
}
}
//反转字符串,也可以直接调用StringBuffer的reverse
public String reverse(String s) {
int len = s.length();
char[] a = s.toCharArray();
for(int i=0;i<len/2;i++) {
char temp = a[i];
a[i] = a[len-i-1];
a[len-i-1] = temp;
}
return String.valueOf(a); //注意字符串转数组,不能写成a.toString返回的是地址字符串
}
//去除0
public String del(String s) {
for(int i=0;i<s.length();i++) {
if(s.charAt(i) != '0') {
return s.substring(i);
}
}
return "0";
}
}
java中如何将char数组转化为String?
1.直接在构造String时建立。 char data[] = {'s', 'g', 'k'}; String str = new String(data);
2.String有方法可以直接转换。 String.valueOf(char[] chr)就可以。 如: char[] cha = {'s','g','h'}; Str