我的任务是创建一个adj。来自文件的图表的矩阵。 我很擅长逐行阅读,不知道如何提取数字。
我想做一个索引为0到长度为1的for循环,看看charAt(i)是否为数字。 但是我不知道该怎么做。任何其他方式这样做将不胜感激。
我试过了:
for (int i=0;i<s.length()-1;i++){
ch=s.charAt(i);
if (ch !=" "){
}
}
编译器说这不是一个有效的论点。
线条的格式是由一个或多个空格分隔的顶点。
如果没有任何内置的API可以做到这一点,那将是最好的。
更新: 1)由于Abbath建议分裂可行,但进一步研究指导方针,我发现它不能保证文件格式良好。
答案 0 :(得分:0)
如果您被允许,您可以使用扫描仪读取文件,然后通过scan.nextInt()或double或您使用的任何类型访问您的号码。
答案 1 :(得分:0)
我建议您将读取行拆分一次,然后通过将存储的元素逐个传递给下面的方法从中提取数字。它检查String是否可以转换为数值:
public boolean isNumeric(String s) {
try {
Double.parseDouble(s);
return true;
} catch (NumberFormatException nfe) {
return false;
}
}
答案 2 :(得分:0)
感谢你的所有建议。 使用: size = Integer.parseInt(s);
解决了我所有的问题。