java中怎么将由数字组成的字符串转化为数组?

一个字符串为12,45,56,89(含逗号),怎么将数字转化为数组?... 一个字符串为12,45,56,89(含逗号),怎么将数字转化为数组? 展开
 我来答
素净还帅气丶超人f79
推荐于2018-12-10 · TA获得超过338个赞
知道小有建树答主
回答量:185
采纳率:75%
帮助的人:75.9万
展开全部
主要是通过包装类提供字符串与整型的转换方法来实现的;
我写了个例子你可以试一下:
String str = "12,34,65,85,45,11"; //定义一个由整型构成的字符串
String[] strArr = str.split(","); //然后使用split方法将字符串拆解到字符串数组中
Integer[] intArr = new Integer[strArr.length]; //定义一个长度与上述的字符串数组长度相通的整型数组
for(int a=0;a<strArr.length;a++){
intArr[a] = Integer.valueOf(strArr[a]); //然后遍历字符串数组,使用包装类Integer的valueOf方法将字符串转为整型
}

for(int b=0;b<intArr.length;b++){
System.out.println(intArr[b]);
}
18388138
2012-11-20 · TA获得超过1956个赞
知道小有建树答主
回答量:1104
采纳率:40%
帮助的人:746万
展开全部
  public class StringToArray {

   public static void main(String[] args) {

   String str = "12,45,56,89";//你给的字符串
   String[] strArray = str.split(",");//使用split方法根据逗号将字符串拆分成字符串数组
   for (int i = 0; i < strArray.length; i++) {
   System.out.print(strArray[i] + " ");
   }
   }
  }

输出结果:12 45 56 89
追问
将其转化为整形数组,怎么转化?谢谢了。
之前 int num=0;
然后用
for (int n = 0; n < a; n++) {
num +=strArray[n];
}
系统报错
追答
  public class StringToArray {
  public static void main(String[] args) {
  String str = "12,45,56,89";//你给的字符串
  String[] strArray = str.split(",");//使用split方法根据逗号将字符串拆分成字符串数组
  int[] num = new int[strArray.length];//定义整型数组用来接收转换的字符串数组
  //将字符串数组转换成整型数组
  for (int i = 0; i < strArray.length; i++) {
  num[i] = Integer.parseInt(strArray[i]);
  }
  System.out.println("输出整型数组:");
  for (int i = 0; i < num.length; i++) {
  System.out.print(num[i] + " ");
  }
  }
  }
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ala400
2012-11-21 · TA获得超过1229个赞
知道小有建树答主
回答量:262
采纳率:100%
帮助的人:278万
展开全部
import java.lang.reflect.Array;
import java.util.Arrays;
public class Kits
{
/**
* 将一个字符串按照指定字符顺序拆分为数组,维度由参数regexs长度决定,拆分顺序也由regexs元素顺序决定。<br>
* 例如:<br>
* 字符串"1,2:3,4|5,6:7,8" 拆分时传入regexs为拆分正则表达式数组 {"\\|",":",","},
* 获得的数组是一个三维数组为{{{1,2},{3,4}},{{5,6},{7,8}}}<br>
* <br>
* 参数: <li>str:拆分源字符串<br> <li>regexs: 拆分正则表达式数组<br><li>
* needToInt:标识是否拆分为int数组<br>
*/
public static Object split(String str,String[] regexs,boolean needToInt)
{
if(regexs==null||regexs.length==0)
return needToInt?Integer.parseInt(str):str;
String[] strs=str.split(regexs[0]);
int[] dimensions=new int[regexs.length];
dimensions[0]=strs.length;
Class<?> clazz=null;
if(needToInt)
clazz=dimensions.getClass().getComponentType();
else
clazz=regexs.getClass().getComponentType();
Object array=Array.newInstance(clazz,dimensions);
String[] regexs_=new String[regexs.length-1];
System.arraycopy(regexs,1,regexs_,0,regexs_.length);
for(int i=0;i<strs.length;i++)
Array.set(array,i,split(strs[i],regexs_,needToInt));
return array;
}
public static void main(String[] args)
{
String s="11,22,33,44,55,66,77";
String[] regexs=new String[]{","};
int[] array=(int[])split(s,regexs,true);
System.out.println(Arrays.toString(array));
}
}
我这里写了个方法,,你直接拿去用就可以了,,只要字符串是按照一定规律组合的,都能拆分,可以选择拆分为int数组还是String数组
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kid__2412
2012-11-20 · TA获得超过150个赞
知道小有建树答主
回答量:185
采纳率:0%
帮助的人:129万
展开全部
public class Test{
public static void main(String[]args){
String temp="12,45,56,89";
String []strs=temp.split(",");
for(int i=0;i<strs.length;i++){
System.out.println(strs[i]);
}
}
}
更多追问追答
追问
能逐条解释下吗?我是新手, 谢谢了
追答
temp.split(",");这是String 类下的split方法 这个方法是按照给定的字符对字符串进行分割 返回值为数组类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xlm说收藏
2012-11-25
知道答主
回答量:16
采纳率:0%
帮助的人:7.4万
展开全部
字符串有个toArray方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式