C/C++、Java、Go、Python总结对比4-数组定义及增删查改

数组经常用来进行科学计算或者进行一些同类型变量的存储

c的写法

#include <stdio.h>

int main() {
    double array1[2] = {1.0, 2.25};  //元素为double类型的数组,在定义时指定数组的长度为2
    int array2[] = {1,2,3};  //元素为int类型的数组,在定义时如果不知道元素的个数可采用这种方式
    printf("array2[0]=%d\n", array2[0]);  //根据元素的下标查找元素

    int array3[2][2] = {
            {1,2},
            {3,4}
    };  //定义二维数组,如果定义多维数组,则添加更多的中括号即可
    printf("array[1][1]=%d\n", array3[1][1]);

    int array4[3];  //定义一个数组,但未初始化
}

c中的数组没有增加、删除的操作

c++的写法

#include <iostream>
#include <string.h>
#include <vector>  //需要引入vector头文件

using namespace std;
int main() {
    //c中的数组定义也适用于c++
    int array1[2] = {1,2};
    int array2[] = {1,2};

    //c++中增加了更为方便的vector
    vector<int> vector1;  //声明一个int型的向量vector1
    vector<int> vector2(10);  //声明一个int型的向量vector2,初始大小为10
    vector<int> vector3(10,0);  //声明一个int型的向量vector3,初始大小为10,初始值都为0
    vector3[0] = 15;  //对vector3的第1个元素进行赋值
    std::cout << vector3[0] << std::endl;  //查看vector3的第1个元素

    vector3.erase(vector3.begin(), vector3.begin()+1);  //删除vector中的元素
    std::cout << vector3.size() << std::endl;  //查看vector的长度

    vector3.insert(vector3.begin(),vector3.begin(), vector3.begin()+3);  //将vector3.begin()到vector3.begin()+3之间的元素全部插入到vector3.begin()前
    std::cout << vector3.size() << std::endl;  //查看vector的长度

    vector< vector<int> > vector4(10, vector<int>(5));        //创建一个10*5的int型二维向量
}

java的写法

public class ArrayDemo {
    public static void main(String[] args) {
        int[] array1;  //定义int类型的数组,未初始化
        int[] array2 = {1,2,3};

        array2[0] = 4;  //更改元素
        System.out.println(array2[0]);  //查找数组的第一个元素
    }
}

go的写法

func arrayDemo() {
   array1 := [5]int{}  //声明数组,未
   array2 := [...]int{1,2,3,4,5}  //声明数组
   array3 := [2][2]int{{1,2}, {3,4}}  //声明二维数组

   println(array1[0])  //查找数组的元素
   println(array2[0])
   println(array3[0][0])
}

go中切片的功能类似list,后面会进行介绍,不在这里和数组混为一谈

python的写法

python中没有数组的概念,如果要用数组,可以直接利用list来实现相关功能

对比总结:

  1. 除了python,c、c++、java、go都可以定义数组,并且数组只可以更改和查找,不能直接进行增加和删除操作。
  2. c++比c多了vector的功能,可以方便对数组进行增删查改;
  3. python没数组的概念;
  4. c、c++、java、go定义数组时都需要花括号来定义元素(后面的章节会讲解如何记忆和快速查看每种语言的语法);
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值