Java-将字符串拆分为数组

Java-将字符串拆分为数组,java,Java,我有一个由用户提交的号码。 我想这样做:1568301 对于这样的数组:1,5,6,8,3,0,1 我怎样才能做到这一点,而不在每个数字之间加上“,”之类的东西呢?(输入int) 谢谢 String str = "123456"; str.toCharArray(); 你想干什么就干什么。使用正则表达式的更复杂版本是: String str = "123456"; str.split("(?<!^)"); String str=“123456”; str.split((?难道你不能通过

我有一个由用户提交的号码。
我想这样做:
1568301

对于这样的数组:
1,5,6,8,3,0,1

我怎样才能做到这一点,而不在每个数字之间加上“,”之类的东西呢?(输入int)

谢谢

String str = "123456";
str.toCharArray();
你想干什么就干什么。使用正则表达式的更复杂版本是:

String str = "123456";
str.split("(?<!^)");
String str=“123456”;

str.split((?难道你不能通过迭代字符串来填充数组吗

char[] arr = new char[str.length];
for(int i=0; i<str.length; i++){
   arr[i] = str.charAt(i);
}

“1568301”。ToCharray()
应执行此操作。

要获取整数数组中的值,请执行以下操作:

String str = "1568301";
int[] vals = new int[str.length];
for (int i = 0; i < str.length(); i++) {
    vals[i] = Character.digit(str.charAt(i), /* base */ 10));
}
String str=“1568301”;
int[]vals=新的int[str.length];
对于(int i=0;i

Character.digit(char,int)
的第二个参数是以数字为基数。我假设您的数字以10为基数。

如果您的数字是以
String
格式显示的,您只需执行以下操作:

    String str = "1568301";
    char[] digitChars = str.toCharArray();

你在期待这样的事情吗

    String ss ="1568301";
    char[] chars = ss.toCharArray();

我猜你正在寻找一个int数组

我建议使用以下代码:

String str = "1568301";
int [] arr = new int[str.length()];
for(int i=0; i<arr.length; i++)
{
  arr[i] = str.charAt(i)-'0';
}
String str=“1568301”;
int[]arr=新int[str.length()];

对于(int i=0;i您可以将拆分与“” 会是这样的:

String test = "123456";
String test2[] = test.split("");
for (int i = 1; i < test2.length; i++) {
    System.out.println(test2[i]);
}
String test=“123456”;
字符串test2[]=test.split(“”);
for(int i=1;i
当你说(输入int),你的意思是你希望数组的类型为int吗?为什么是否定的,有人能解释一下吗?我不是有意否决你的答案,但在你编辑你的答案之前,网站不会让我更改我的投票。如果你添加了一个空格,我就可以修改我的投票。修改了!抱歉这么笨拙。别忘了检查输入的““否则这会爆炸!
String test = "123456";
String test2[] = test.split("");
for (int i = 1; i < test2.length; i++) {
    System.out.println(test2[i]);
}