字符串分割+二维数组 Day15练习

package com.sxt.arrays.test;

import java.util.Arrays;
/*  1,2,3,4!5,6,7!8,9!12,456,90!32
 *     将此字符串以叹号为分割存入二维数组中
 * 知识点:字符串+数组
 */
public class TestArray {
    public static void main(String[] args) {

        String s = "1,2,3,4!5,6,7!8,9!12,456,90!32";
        String[] split = s.split("!");//分割  返回字符串数组
        System.out.println(Arrays.toString(split));
        System.out.println("split.length:"+split.length);//二维数组中一维数组的个数
        System.out.println("split[0]:"+split[0]);

        int [][]arr = new int[split.length][];//split.length:二维数组中一维数组的个数
        System.out.println("---------------------------");
        for(int i=0; i<split.length; i++){
            String[] split2 = split[i].split(",");//每个一维数组内的元素是一个整体  所以以逗号分割
            //System.out.println("---->"+Arrays.toString(split2));
            arr[i] = new int[split2.length];//初始化一维数组!否则:NullPointerException  动态赋值
            for(int j=0; j<arr[i].length; j++){
                arr[i][j] = Integer.parseInt(split2[j]);
                System.out.print(arr[i][j]+" ");
            }
            System.out.println();
        }
//        [1,2,3,4, 5,6,7, 8,9, 12,456,90, 32]
//        split.length:5
//        split[0]:1,2,3,4
//        ---------------------------
//        1 2 3 4
//        5 6 7
//        8 9
//        12 456 90
//        32 

    }
}
时间: 2024-10-07 10:47:32

字符串分割+二维数组 Day15练习的相关文章

【字符串】面试题之以逗号分割字符串,形成二维数组

题目: 有一个字符串符合以下特征("abcdef,acccd,eeee,aaaa,e3eeeee,sssss,"), 要求写一个函数(接口),输出以下结果 1) 以逗号分割字符串,形成二维数组,并把结果传出: 2) 把二维数组行数运算结果也传出. 请自己定义一个接口(函数). 要求1:能正确表达功能的要求,定义出接口(函数)(30分): 要求2:正确实现接口(函数),并实现功能(40分): 要求3:编写正确的测试用例.(30分). //头文件 #include <stdio.h&

二维数组(扩展hash数组)以及json,严格模式,字符串的常用api

二维数组 数组中的每一个元素也是数组 ?var arr=[ [1,2,3], [4,5,6], [7,8,9], [1,2,3,4,5,6,7] ...]; 怎么遍历二维数组 var arr=[ [1,2,3], [4,5,6,7], [10,20,30,40,60,80] ]; for(var r=0;r<arr.length;r++){ for(var c=0;c<arr[r].length;c++){ console.log(arr[r][c]); } } 怎么访问二维数组中的元素 ar

8.31 二维数组 字符串和指针

指针+1移动了相当于所指向类型的大小的字节 int *s1[100] 移动了4个字节 int (*s2)[100] 移动了400个字节 char *s3 移动了1 个字节 int *s4 移动了4个字节 ***p2如何理解? int *p0 = &i *p0  = i int **p1 = &p0 **p1 = i int ***p2 = &p1 ***p2 = i *p2 = p1的值 **p2 = p0的值 ***p2 = i的值 所以***p2就是p0的值        而p

C#部分---二维数组、split分割;

二维数组定义方式: int[,] array = new int[3, 4]{ {1,2,3,4}, {3,4,5,6}, {5,6,7,8} };                  3表示,有三个一维数组                     4表示,每一个一维数组中有4个元素. split() 以***进行分割 分割开的内容需要放置在string类型的数组中,不需要给数组定义长度 string s = Console.ReadLine() ; string[] array = s.Spli

C语言--二维数组,字符串数组,多维数组

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { // int a[2][3]={ // {1,2,3}, // {4,5,6} // }; // int a[2][3]={1,2,3,4,5,6}; // //打印单个元素 // printf("%d",a[1][1]); // //元素没赋全,默认为0 // int b[2][3]={{1,2,3},{4}}; // /

js二维数组与字符串

1. 二维数组:数组中的元素,又引用了另一个数组对象 何时使用:只要保存横行竖列的数据, 具有上下级包含关系的数据, 创建二维数组: 1. var arr=[]; col arr[0]=["保定","唐山","秦皇岛"]; //row arr[1]=["郑州","洛阳","驻马店"]; 2. var arr=[ ["保定","唐山","秦

C语言二维数组字符串的赋值

今天用到了二维数组作为参数传递的程序,通过网上搜索,针对自己遇到的问题做个整理. 1.在被调用函数的形参数组定义可以省略第一维的大小,第二维不可省略,如下: void fun(int a[5][20]); //合法 void fun(int a[][20]); //合法 void fun(int a[5][]); //不合法 void fun(int a[][]); //不合法 将二维数组作为形参时,第一维大小可以省略,第二维不可省略,这是有编译器原理限制的,在内存中按数组排列规则存放(按行存放

C语言数组:C语言数组定义、二维数组、动态数组、字符串数组

1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include <stdlib.h> int main() { int a1=20, a2=345, a3=700, a4=22; int b1=56720, b2=9999, b3=20098, b4=2; int c1=233, c2=205, c3=1, c4=6666; int d1=34, d2=0, d3

C#调用C++ 平台调用P/Invoke 结构体--含有内置数据类型的一维、二维数组、字符串指针【六】

[1]结构体中含有内置数据类型的一维数组 C++代码: typedef struct _testStru3 { int iValArrp[30]; WCHAR szChArr[30]; }testStru3; EXPORTDLL_API void Struct_ChangeArr( testStru3 *pStru ) { if (NULL == pStru) { return; } pStru->iValArrp[0] = 8; lstrcpynW(pStru->szChArr, L&quo