输入一个数字之后,怎么把这个数字拆分成一个字一个字的?
java中输入一个数字之后,怎么把这个数字拆分成一个字一个字的呢?
我想编写一个功能,就是你随机输入一个数字。例如342345243,他就会把他拆分成第一个数字3第二个数字4第三个数字2,第4个数字。。。。。。这样直到最后一个数字,怎么实现呢?而且我输入的那个随机的数字是随机的哦,有可能只有一位数,也有可能是8位数字。。。。求大神出现~
[解决办法]
import java.util.Scanner;
/**
*
* @author Administrator
*/
public class Split {
public static void main(String args[]){
System.out.println("请输入数字,按Enter键结束!");
Scanner s=new Scanner(System.in);
String str=s.next();
char[] c=str.toCharArray();
System.out.println("把你输入的数字一个一个地输出,如下所示:");
for(int i=0;i<c.length;i++){
System.out.print(c[i]+" ");
}
System.out.println();
}
}
运行结果如下所示:
run:
请输入数字,按Enter键结束!
987524652
把你输入的数字一个一个地输出,如下所示:
9 8 7 5 2 4 6 5 2
成功生成(总时间:14 秒)
[解决办法]
将数字装换为字符串
之后一个函数搞定
toCharArray
public char[] toCharArray()Converts this string to a new character array.
Returns:
a newly allocated character array whose length is the length of this string and whose contents are initialized to contain the character sequence represented by this string.
[解决办法]
字符型变成int
int a= Integer.parseInt(String.valueOf(c[i]));
float类似
------解决方案--------------------
import java.util.Scanner;
public class Test {
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.println("请输入数字");
int a = scanner.nextInt();
while(a != 0){
int n = a % 10;
System.out.println(n);
a /= 10;
}
}
}
[解决办法]
import java.util.Scanner;
public class TestString {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
//System.out.println(((Integer)a).toString());
char[] ch = ((Integer)a).toString().toCharArray();
for(int i = 0;i < ch.length;i++) {
System.out.print(ch[i] + " ");
}
System.out.println();
}
}
[解决办法]
class Hello {
public static String numberToString(int number) {
StringBuilder result = new StringBuilder();
do {
result.append(number % 10);
number /= 10;
} while (number != 0);
return result.reverse().toString();
}
public static void main(String[] args) {
int n = 342345243;
System.out.println(numberToString(n));
}
}