Advertisement

各大厂Linux面试题汇总,足够你学习的,不够找我

阅读量:

前言:

针对Java面试的经验分享

Linux 概述

什么是Linux

Linux是一种零成本方案,并不受限制地传播的一类 Unix 操作系统;它是以 POSIX 体系结构为基础开发而成的操作系统;具备强大的多用户与多任务处理能力,并允许多个线程同时运行;能够兼容 32 位及 64 位硬件配置;该系统遵循 Unix 的核心设计理念;提供良好的用户体验并保证稳定运行;能够执行广泛使用的 Unix 工具软件、应用程序以及各种网络协议功能

Unix和Linux有什么区别?

Linux是一种功能齐全的操作系统,在服务器领域得到了广泛应用;它与UNIX有很多共同特点;然而,并非两者完全相同;实际上两者在操作系统的某些关键特性上存在显著差异。

  1. 1.开源性

Linux是一款免费软件操作系统,并非必须付费版本;Unix则是遵循版权法保护源代码的传统类型商业软件,在运行时需依法申请合法授权

2.跨平台性

Linux操作系统表现出卓越的跨平台兼容性能力,在多种硬件平台上均能顺利运行;而Unix操作系统由于其跨平台兼容性能力不足,在多数情况下都需要搭配特定硬件进行使用。

3.可视化界面

Linux除了运行命令行操作之外,还包含有窗体管理系统;Unix仅限于基于命令行的操作系统。

4.硬件环境

Linux系统本身对硬件的要求不高,并非特别复杂;相对容易掌握其安装方法。而Unix系统则对硬件要求更为严格,在安装难度上更为显著。

5.用户群体

Linux 的用户群体规模较大,在个人及企业领域均有应用;而 Unix 的用户群体相对较小,则主要集中在安全系数要求较高的大型企业和相关机构中。具体而言,在金融、通信等部门可观察到较为普遍的应用;此外,在部分 Unix 硬件厂商如 Sun 等公司中也可见到其身影。

相较于Unix操作系统而言,在广大计算机爱好者的 circles 中 Linux 系统更为受欢迎的原因在于它不仅包含了 Unix 操作系统的全部功能,并且在普通个人电脑上实现了全部的 Unix 特性的同时还具备了开源免费这一显著优势 更加容易被广泛使用

什么是 Linux 内核?

Linux 系统的中心部分构成内核。内核在必要时管理计算机系统上的所有硬件和软件,并负责在必要时分配硬件,并处理相应的软件任务。

  1. 系统内存管理
  2. 应用程序管理
  3. 硬件设备管理
  4. 文件系统管理

Linux的基本组件是什么?

与大多数主流的操作系统相似,在Linux中也包含了一系列的核心组件:内核、 shell界面和图形用户界面(GUI)、系统实用程序以及各种应用程序。相较于其他操作系统的优势在于,在每一个功能模块中都集成了一整套完整的解决方案,并且所有的源代码都可以通过网络获取。

Linux 的体系结构

从大的方面讲,Linux 体系结构可以分为两块:

  • 用户空间(User Space) :用户空间也包含应用程序和C库。
    • 内核空间(Kernel Space) :内核空间也包含系统调用接口、内核以及与平台架构相关的代码。

为什么 Linux 体系结构要分为用户空间和内核空间的原因?

  • 1、现代CPU实现了多种运行模式,在这些模式下它们能够执行各自对应的指令集并访问相应的寄存器组。
  • 2、基于CPU的角度设计 Linux 系统架构,并以保护内核安全为目标将系统划分为两个主要部分。

用户空间和内核空间分别代表程序执行过程中的两个独特阶段 ,我们可以通过以下两种途径实现两者的切换:第一种方法是通过系统调用实现转换;第二种方法则是依靠硬件中断机制。

BASH和DOS之间的基本区别是什么?

BASH和DOS控制台之间的主要区别在于3个方面:

  • 该种编程语言在大小写字母处理上存在显著区别:BASH能够识别大小写字母差异(即它们被视为不同的字符),而DOS则将大小写字母视为相同。
    • 在BASH系统中,“/”被用作目录分隔符;然而,在DOS系统中,“/”则被用作命令参数之间的分隔符,并且同样地,“\”在这两种系统中都充当转义字符的作用。
    • 根据命名文件的标准规则(通常指文件名长度不超过8个字符),DOS系统将文件扩展名设定为包含一个点和随后的3个字符。BASH系统并未遵循这一惯例。

Linux 开机启动过程?

了解即可。

  • 1、主机开机自检流程执行中,并解析系统硬件配置数据。
  • 2、执行GRUB和LILO引导扇区解析操作以获取初始引导信息。
  • 3、启动Linux内核加载过程以建立操作系统基础。
  • 4、启动init进程(其进程号固定设置为1)完成系统初始化任务。
  • 5、切换至指定的操作系统运行模式以确保系统稳定工作状态。
  • 6、登录终端界面并输入用户名及密码完成身份验证过程。

Linux系统缺省的运行级别?

  • 退出系统.
  • 单用户的使用环境.
  • 基于字符型界面的人工智能处理(不支持网络).
  • 基于字符型界面的人工智能处理.
  • 资源空闲状态.
  • 基于图形型界面的人工智能处理.
  • 重新加载程序.

Linux 使用的进程间通信方式?

了解即可,不需要太深入。

  • 数据传输通道(pipe)、专用数据传输通道(s_pipe)、先进先出队列(FIFO)。
    • 触发机制(signal)。
    • 消息缓冲区(消息队列)。
    • 共享内存(shared memory)。
    • 计算资源限制(信号量)。
    • 套接字(socket)相关技术实现细节等讨论中涉及的内容范围

Linux 有哪些系统日志文件?

比较重要的是 /var/log/messages 日志文件。

此份日志文件包含了多份进程日志数据的汇总情况,并通过此文件我们能识别出任何形式的入侵行为及其成功案例。

此外,在使用者的系统中如果配置了ELK的日志集中收集功能,则系统会自动整合这些数据。

Linux系统安装多个桌面环境有帮助吗?

通常情况下,在没有问题的情况下运行也是一个常见的需求。然而,在切换到另一个环境中这一点对于用户来说是一个优先考虑的问题。某些程序在一个环境中运行良好而在另一个环境中则会遇到不兼容的情况

什么是交换空间?

swap分区是Linux系统中专门分配的一个区域,在需要时用于暂时存储多个并行执行的进程。当系统运行过程中发现可用内存不足以支持当前所有正在执行的进程时,则会切换至swap分区以解决资源不足的问题。

什么是root帐户

类似系统的 root 账户角色赋予了全面的控制权限。
提供了一个管理用户账户的环境。
根据需要为各个账户分配相应的权限。
在安装 Linux 的过程中,默认会使用该 account

什么是LILO?

LILO是Linux系统的启动机制。其主要功能在于将Linux操作系统加载至主内存以便其能够启动。

什么是BASH?

BASH是Bourne Again SHell的缩写形式。该工具由Steve Bourne开发,并替代了原有的Bourne Shell(以/ bin / sh标识)。整合了原有功能以及其它增强功能后使使用变得更加便捷。自此之后,默认在Linux系统上使用BASH成为主流选择。

什么是CLI?

终端操作界面(commonly abbreviated as CLI)是在图形用户界面普及之前长期主导着计算机操作系统的主要交互方式,在这类系统中通常缺乏鼠标和其他图形化输入设备的支持

一般而言, 命令行界面(CLI)不如图形用户界面(GUI)方便于普通用户提供操作指令, 因为, 命令行界面要求用户记忆执行的每一个指令, 但其本身的特点使得CLI能够节省计算机资源消耗. 在熟练掌握相关指令的前提下, 使用CLI的速度相比而言更快一些. 因此, 即使是图形用户界面的操作系统, 在某些配置下仍然提供作为可选配置选项.

什么是GUI?

图形用户界面(Graphical User Interface, 简称 GUI, 也称为 Graphical User Interface)是一种广泛使用的计算机操作界面设计模式。它通过直观的图形元素让用户与计算机系统进行交互,并提供了多种功能组件供用户操作和管理。

图形用户界面(GUI)是人机交互的一种视觉化展示方式。它通过提供一系列直观的操作元素(如图标、菜单项等),让用户能够通过鼠标点击等方式轻松完成各种操作如运行程序、打开文件、调用功能等日常操作。相较于传统的方式——通过键盘输入文字或字符指令来进行常规操作而言,图形用户界面在人机交互体验方面具有显著的优势

开源的优势是什么?

开源让你能够将软件(包括源代码)免费分发给任何感兴趣的人。随后,人们能够添加功能,并且甚至可以检查和修复源代码中的错误。他们甚至可以让它运行得更加出色,并再次自由地重新分配这些改进后的源代码。最终使社区中的每个人受益

GNU项目的重要性是什么?

即为一种旨在促进开放协作与共享精神的独特模式。该运动不仅提供了自由运行程序的机会,并且鼓励用户根据个人需求学习并自行修改程序代码。它还赋予了每个用户将软件副本分发给他人的权利,并且让你能够独立升级并分享改进版本给更多人

磁盘、目录、文件

简单 Linux 文件系统?

在Linux操作系统中,默认情况下由操作系统的管理和控制的所有资源都会被视为一个整体文件。这些资源包括诸如网络接口卡、磁盘驱动器等设备以及打印机和输入输出设备等硬件设施,并非仅限于普通文件或目录。

就认为,在Linux系统中存在一个非常重要的核心理念:一切皆为文件。这正是Unix哲学的一个重要体现,并且Linux作为对Unix的一种重构延续了这一理念。在Unix系统架构中,默认地将所有资源视为文件形式存在——其中也包括硬件设备。而UNIX系统则将每一个硬件设备抽象为一个设备文件,并通过这种方式实现了对这些资源的管理与访问功能:这样用户就可以利用类似处理普通文件的方式来操作这些设备资源了。

Linux 支持 5 种文件类型,如下图所示:

Linux 的目录结构是怎样的?

这个问题,一般不会问。更多是实际使用时,需要知道。

Linux 文件系统的结构层次鲜明,就像一棵倒立的树,最顶层是其根目录:

常见目录说明

  • /bin:存储二进制执行文件(如ls、cat、mkdir等),这些常用的命令通常位于此目录中;
  • /etc:存放操作系统管理与配置参数;
  • /home:作为所有用户主目录的根目录,默认情况下每个用户的主目录均以此为基础创建(例如:user的主目录为/home/user),可以用~user表示该目录;
  • /usr:用于存储操作系统自带的应用程序包;
  • /opt:存放额外安装的可选应用程序包位置,默认情况下 tomcat 等程序均可安装在此处;
  • /proc:虚拟文件系统目录,反映系统内存信息;可以直接访问此目录以获取系统相关信息;
  • /root:超级用户(系统管理员)的主目录(特权阶级);
  • /sbin:存储二进制执行文件,默认仅root用户能访问;此目录主要用于存放系统管理员级别的管理命令与程序(如ifconfig等);
  • /dev:用于存储设备文件;
  • /mnt:为系统管理员临时挂载其他文件系统的安装点,默认提供该目录给用户以临时挂载其他文件系统;
  • /boot:存放引导操作系统使用的各种文件集合;
  • /lib:存储与操作系统运行相关的库文件;
  • /tmp:用于临时存储各种临时文件,默认为共享性临时文件存儲点;
  • /var:用于存放运行时需要动态改变数据的文件以及某些大容量文件的溢出区域;例如各种服务的日志记录(如系统启动日志等)等;
  • /lost+found: 此目录通常为空,在非正常关机状态下若有无家可归的文檔将存放在此处(在Windows环境下则称为chk files)。

什么是 inode ?

通常情况下,在面试中无需深入探讨 inode 。然而 inode 是一个核心概念。
它是一个核心概念。
它是理解 Unix/Linux 文件系统及其存储介质的不可或缺的基础。

理解inode,要从文件储存说起。

文件被存储在硬盘中;硬盘的最小数据存储单元被称为扇区(Sector);每个扇区包含512字节的数据量(相当于0.5KB)。

操作系统的硬件在访问硬盘时,并不会逐个扇区分片进行操作。相反的操作方式是一次性处理一组扇区分片区域。每个组织由若干个扇区分片组成。“块”的大小通常采用4KB作为标准单位

文件数据都存储于"块"中。
不言而喻地说,在这里我们需要找到一种机制来存储这些元信息——如文件的创建者、生成日期以及大小等关键数据。
这种专门用于存储文件元信息的特殊区域被称为inode,在中文中则译作"索引节点"。

每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。

概述 Linux 文件系统如何利用 i 节点将文件的逻辑结构转化为物理布局?

如果看的一脸懵逼,也没关系。一般来说,面试官不太会问这个题目。

Linux 通过 inode 节点表将文件的逻辑结构和物理结构进行转换。

  • inode 是一个占据64字节空间的数据结构,在其数据字段中存储了与相应文件相关联的关键信息。
  • 这些相关信息包括:文件大小、所有者身份、访问权限以及类型等核心数据。
  • 在 inode 的组织架构中最关键的部分是磁盘地址索引部分。
  • 这个索引部分包含13个指针字段(block numbers),它们指明了数据存储的位置。
  • 当系统需要读取特定的inode时会根据这些指针字段快速定位到相应的物理存储位置。

什么是硬链接和软链接?

1、硬链接

在Linux系统中,文件通过其 inode(即索引节点)进行识别;而hard link本质上相当于一个指针结构,并且每个 inode只能被单个 hard link 所共享;因此,在创建hard links时每增加一个 hard link就会使总的连接数目增加1

*不足:1、无法在跨文件系统之间的文件之间创建链接;2、仅凭权限等级较高的用户才能对目录进行硬链接操作。

2、软链接

软链路解决了硬链路的不足,并不受任何文件系统限制。所有用户都可以方便地创建指向目录的符号链路。如今已被广泛采用,并且这种机制还具有更高的灵活性,并且能够跨越不同的机器和网络来连接文件。

由于软链路中存储了源文件的路径信息,在源文件被移动至新目录时系统无法自动更新链路指向而导致无法访问相关链路文件的现象被称为链路失效问题;而硬链路则能避免这一问题;此外,在创建新索引节点并存储源路径方面硬链路还需要额外占用内存资源

实际场景下,基本是使用软链接 。总结区别如下:

  • 硬连接无法跨越分区而实现跨分区功能。
  • 它们中的硬连接指向目标节点前端而软连接则建立新的节点副本。
  • 移除该文件不会影响原始节点但移除软连接会清除相关联的节点数据。

RAID 是什么?

RAID 的全称是 独立磁盘冗余阵列 (Redundant Array of Independent Disks),其核心理念在于将多块成本较低的硬盘组合成一个功能强大的存储阵列,并提供与单个昂贵、容量极大的硬盘相当甚至更好的性能水平。这种技术常见于服务器系统中。

通过将多块相同型号的硬盘连接在一起形成一个虚拟扇区,并根据其功能特点和保护能力的不同级别分类,在数据可靠性和读写效率方面采取了不同的优化策略。

当然地讲,在当今众多企业都普遍采用云计算的时代背景下,多数人对RAID技术难以深入理解。然而,在实际应用中我们常会遇到类似的概念:这主要是由于普通的云存储技术和SSD技术的结合所导致的。

安全

一台 Linux 系统初始化环境后需要做一些什么安全工作?

  • 1、添加普通用户登陆,禁止 root 用户登陆,更改 SSH 端口号。

修改 SSH 端口不一定绝对哈。当然,如果要暴露在外网,建议改下。l

  • 2、服务器采用密钥认证登录的方式,并不得通过明文密码实现登录。
    • 3、请启用防火墙服务,并关闭 SElinux 系统;根据业务需求设定相应的安全策略。
    • 4、请安装 fail2ban 软件以有效防范 SSH 暂时暴力攻击行为。
    • 5、为保障网络安全,请配置仅允許公司内部網路出口 IP地址能存取伺服器。

也可以安装 VPN 等软件,只允许连接 VPN 到服务器上。

  • 6、将历史命令记录的条数调整为 10 条。
  • 7、仅允许具备必要条件的服务器能够接入外网服务;其余服务器须被完全隔离。
  • 8、从软件层面实施全方位的安全防护措施。
    • 8.1 配置 nginx_waf 模块以防止 SQL 注入攻击。
    • 8.2 将 Web 服务启动时指定用户设为 www。
      • 并对网站目录进行权限设置:
        • 更改网站目录的所有者和所属组为 www。
        • 同时重新设置网站目录的相关权限信息。

什么叫 CC 攻击?什么叫 DDOS 攻击?

  • CC 攻击主要用于针对网页发起持续性访问请求
  • DDoS 攻击即分布式拒绝服务攻击,其具体运作机制是通过利用多台服务器的强大计算能力协同工作

攻击行为即为利用大量合法的网络请求来实现瘫痪网络的目的。

怎么预防 CC 攻击和 DDOS 攻击?

防御 CC 和 DDOS 攻击而言,在目前的技术条件下仅靠硬件防火墙来进行流量清洗,并且这种防护方式会将受到攻击的流量导入到陷阱中。

在流量清理这块儿,主要选择ISP服务商提供的防护服务即可,在机房通常会有额外的带宽资源,在这种情况下我们倾向于购买这些服务。

什么是网站数据库注入?

  • 由于程序员的技能及经验存在明显差异,在编写代码时往往无法对用户的输入数据合法性进行有效验证。
  • 程序中潜在存在安全漏洞。用户可以通过输入一段数据库查询指令,并根据程序运行结果来获取某些想要的信息。
  • SQL注入现象通常隐藏得非常巧妙,在外观上与常见的Web页面访问非常相似。如果管理员很少关注服务器日志动态,则可能很长时间都不会察觉这种潜在的安全威胁。

如何过滤与预防?

数据库网页端注入这种,可以考虑使用 nginx_waf 做过滤与预防。

Shell

本小节属于选读内容。

我也不太会编写 Shell 脚本,

通常是在编写脚本时参考网络上的资源进行组合与调整。

Shell 脚本是什么?

一种Shell脚本是一种文本文件,并且包含一组指令或脚本代码。在系统管理工作中我们通常会常用多个命令来处理一项任务因此将所有指令组织在一个特定的文本文件中(即Shell脚本)能有效提升工作效率

什么是默认登录 Shell ?

在 Linux 操作系统,"/bin/bash" 是默认登录 Shell,是在创建用户时分配的。

使用 chsh 命令可以改变默认的 Shell 。示例如下所示:

复制代码
 ## chsh <用户名> -s <新shell>

    
 ## chsh ThinkWon -s /bin/sh

在 Shell 脚本中,如何写入注释?

注释可用于说明一个脚本能做什么以及它是如何工作的。每一行注释都应以 # 开头,并且每个注释都应该简明扼要但清晰地解释相应的代码行为。

复制代码
 #!/bin/bash

    
 ## This is a command
    
 echo “I am logged in as $USER”

语法级

可以在 Shell 脚本中使用哪些类型的变量?

在 Shell 脚本,我们可以使用两种类型的变量:

  • 系统定义变量

由于系统的自我生成机制自动创建了系统变量。这类特殊变量通常以大写字母标识,并可通过设置特定命令来访问。

  • 用户定义变量

由系统用户生成和定义用户的变量,并可通过执行命令 'echo $<变量名>' 来查看其值。

Shell脚本中 $? 标记的用途是什么?

编写一个Shell脚本时,在if条件中使用$? 可以用于判断前一命令是否完成

如果结束状态是 0 ,说明前一个命令执行成功。例如:

复制代码
 root@localhost:~## ls /usr/bin/shar

    
 /usr/bin/shar
    
 root@localhost:~## echo $?
    
 0

如果结束状态不是0,说明命令执行失败。例如:

复制代码
 root@localhost:~## ls /usr/bin/share

    
 ls: cannot access /usr/bin/share: No such file or directory
    
 root@localhost:~## echo $?
    
 2

Bourne Shell(bash) 中有哪些特殊的变量?

下面的表列出了 Bourne Shell 为命令行设置的特殊变量。

复制代码
 内建变量    解释

    
 $0    命令行中的脚本名字
    
 $1    第一个命令行参数
    
 $2    第二个命令行参数
    
 …..    …….
    
 $9    第九个命令行参数
    
 $##    命令行参数的数量
    
 $*    所有命令行参数,以空格隔开

如何取消变量或取消变量赋值?

unset 命令用于取消变量或取消变量赋值。语法如下所示:

复制代码
    ## unset <变量名>

Shell 脚本中if语法如何嵌套?

复制代码
 if [ 条件 ]

    
 then
    
 命令1
    
 命令2
    
 …..
    
 else
    
 if [ 条件 ]
    
 then
    
 命令1
    
 命令2
    
 ….
    
 else
    
 命令1
    
 命令2
    
 …..
    
 fi
    
 fi

在 Shell 脚本中如何比较两个数字?

在 if-then 中使用测试命令( -gt 等)来比较两个数字。例如:

复制代码
 #!/bin/bash

    
 x=10
    
 y=20
    
 if [ $x -gt $y ]
    
 then
    
 echo “x is greater than y”
    
 else
    
 echo “y is greater than x”
    
 fi

Shell 脚本中case语句的语法?

基础语法如下:

复制代码
 case 变量 in

    
 值1)
    
 命令1
    
 命令2
    
 …..
    
 最后命令
    
 !!
    
 值2)
    
 命令1
    
 命令2
    
 ……
    
 最后命令
    
 ;;
    
 esac

Shell 脚本中for循环语法?

基础语法如下:

复制代码
 for 变量 in 循环列表

    
 do
    
 命令1
    
 命令2
    
 ….
    
 最后命令
    
 done

Shell 脚本中while循环语法?

以 while 循环为例,在条件满足的情况下循环体将不断执行;与 for 循环不同,在 while 循环中当条件不再满足时循环体将停止执行。

基础语法:

复制代码
 while [ 条件 ]

    
 do
    
 命令…
    
 done

do-while 语句的基本格式?

do-while 语句与 while 语句具有相似性,在其执行流程中,在执行循环体指令块之前会先检查控制条件(LCTT 解释为循环至少执行一次)。以下展示了do-while语句的语法结构:

复制代码
 do

    
 {
    
 命令
    
 } while (条件)

Shell 脚本中 break 命令的作用?

Break指令的一种基本功能是终止当前的执行流程。我们可以在While和Until循环中使用Break语句来终止循环。

Shell 脚本中 continue 命令的作用?

与break命令不同的是, continue命令仅跳过当前循环中的迭代步骤, 而不是整个循环. 在许多情况下非常有用, 例如在出现错误时, 我们仍然希望能够继续执行整个大循环.

如何使脚本可执行?

使用 chmod 命令来使脚本可执行。例子如下:chmod a+x myscript.sh

#!/bin/bash 的作用?

#!/bin/bash 是 Shell 脚本的第一行,称为释伴(shebang)行。

  • 这里 # 符号叫做 hash ,而 ! 叫做 bang。
  • 它的意思是命令通过 /bin/bash 来执行。

如何调试 Shell脚本?

  • 可采用 -x' 代码(sh -x myscript.sh)来调试 Shell 脚本。
  • 另一种方法是可选用参数(sh -nv myscript.sh)。

如何将标准输出和错误输出同时重定向到同一位置?

  • 方法一:2>&1 (如## ls /usr/share/doc > out.txt 2>&1 ) 。
  • 方法二:&> (如## ls /usr/share/doc &> out.txt ) 。

在 Shell 脚本中,如何测试文件?

test 命令可以用来测试文件。基础用法如下表格:

复制代码
 Test         用法

    
 -d 文件名    如果文件存在并且是目录,返回true
    
 -e 文件名    如果文件存在,返回true
    
 -f 文件名    如果文件存在并且是普通文件,返回true
    
 -r 文件名    如果文件存在并可读,返回true
    
 -s 文件名    如果文件存在并且不为空,返回true
    
 -w 文件名    如果文件存在并可写,返回true
    
 -x 文件名    如果文件存在并可执行,返回true

在 Shell 脚本如何定义函数呢?

函数是一种具有独特标识符的代码模块。一旦我们定义了代码模块(即代码块),我们就可以在脚本中引用其名称来执行该模块。示例如下所示:

复制代码
 $ diskusage () { df -h ; }

    
 译注:下面是我给的shell函数语法,原文没有
    
 [ function ] 函数名 [()]
    
 {
    
 命令;
    
 [return int;]
    
 }

如何让 Shell 就脚本得到来自终端的输入?

read 命令能够读取来自终端(通过键盘)的数据。
read 命令能够将用户的输入存储在指定的变量中。
例如:

复制代码
 ## vi /tmp/test.sh

    
 #!/bin/bash
    
 echo ‘Please enter your name’
    
 read name
    
 echo “My Name is $name”
    
 ## ./test.sh
    
 Please enter your name
    
 ThinkWon
    
 My Name is ThinkWon

如何执行算术运算?

有两种方法来执行算术运算:

  • 1、使用 expr 命令:## expr 5 + 2 。
  • 2、用一个美元符号和方括号([ 表达式 ]):test=[16 + 4] ; test=$[16 + 4] 。

说明:鉴于篇幅限制,本文仅提供部分参考内容。各类职位的面试试题各有特色,尤其是像一线大厂这样的公司,他们的面试试题往往起到参考作用,但并非绝对依据,主要目的是为了帮助大家积累专业知识,有备而来。最后,我会整理出一份涵盖Spring系列学习资料及面试试题等内容的手册,其中包含Spring核心框架相关问题及解答,以及最新的阿里巴巴开发手册(共63页PDF总结)和2022年Java领域最全面试手册。总计整理出超过千份资料供学习者参考与练习,欢迎随时获取!

全部评论 (0)

还没有任何评论哟~