输入:
[
[0,0,0],
[0,1,0],
[0,0,0]
]
要求把数据保存起来。
public static void main(String[] args) {
System.out.println("请输入矩阵");
Scanner sc = new Scanner(System.in);
List<String> stringList = new ArrayList<>();
//数组方式
//String[] strings =new String[100];
int i =0;
while (sc.hasNextLine()) {
//方式1 数组
// strings[i] = sc.nextLine();
// System.out.println(strings[i]);
// if(strings[i].equals("]")){
// break;
// }
// if(strings[i] == "]")
// break;
// ++i;
//方式2 ArrayList
stringList.add(sc.nextLine());
//System.out.println(stringList.get(i));
if(stringList.get(i).equals("]")){
break;
}
// if(stringList.get(i) == "]")
// break;
++i;
}
sc.close();
//这里求出数组的列
String cow = stringList.get(1).trim();
int cowCount =0;
for(int x =0;x<cow.length();x++ ){
if(cow.charAt(x)>=48 && cow.charAt(x)<=57){
cowCount++;
}
}
int[][] obstacleGrid= new int[stringList.size()-2][cowCount];
int m=0 ,k=0;
for(int s =1;s<stringList.size()-1;s++){
//这里拿到中间的二维数组字符串
String str = stringList.get(s).trim();
if(str != null && !"".equals(str)){
for(int n=0;n<str.length();n++){
if(str.charAt(n)>=48 && str.charAt(n)<=57){
//System.out.println( str.charAt(n));
obstacleGrid[m][k] = Integer.parseInt(String.valueOf(str.charAt(n)));
k++;
if(k==cowCount){
//这里列要重新进行赋值
k =0;
}
}
}
}
m++;
}
System.out.println(obstacleGrid);
被成功赋值的数组
本公众号分享自己从程序员小白到经历春招秋招斩获10几个offer的面试笔试经验,其中包括【Java】、【操作系统】、【计算机网络】、【设计模式】、【数据结构与算法】、【大厂面经】、【数据库】期待你加入!!!
1.计算机网络----三次握手四次挥手
2.梦想成真-----项目自我介绍
3.你们要的设计模式来了
4.震惊!来看《这份程序员面试手册》!!!
5.一字一句教你面试“个人简介”
6.接近30场面试分享
7.你们要的免费书来了