日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

一個關于 i++ 和 ++i 的面試題打趴了所有人

來源: 責編: 時間:2023-09-28 10:04:33 314觀看
導讀大家好,我是哪吒。公司最近在招聘實習生,作為面試官之一的我,問了一道不起眼的經典面試題。一、i++和++i有啥區別?大部分的面試者會這樣答:i++ 返回原來的值,++i 返回加1后的值。i++是先賦值,然后再自增;++i是先自增,后賦值。

00r28資訊網——每日最新資訊28at.com

大家好,我是哪吒。00r28資訊網——每日最新資訊28at.com

公司最近在招聘實習生,作為面試官之一的我,問了一道不起眼的經典面試題。00r28資訊網——每日最新資訊28at.com

一、i++和++i有啥區別?

大部分的面試者會這樣答:00r28資訊網——每日最新資訊28at.com

  • i++ 返回原來的值,++i 返回加1后的值。
  • i++是先賦值,然后再自增;++i是先自增,后賦值。

下面這個才是主菜。00r28資訊網——每日最新資訊28at.com

二、高并發場景下i++會遇到哪些問題?

大部分面試者心里肯定在想,這會有啥問題,不就是一個普通的操作嘛!00r28資訊網——每日最新資訊28at.com

先從i++操作說起,一個命令可以拆分成三部分:00r28資訊網——每日最新資訊28at.com

  • 取值
  • ++操作
  • 賦值

我去,這不是吹毛求疵,雞蛋里挑骨頭嘛!這面試不參加也罷!00r28資訊網——每日最新資訊28at.com

但是,你想啊,如果當線程執行到取值或者++操作時,線程突然切換了,會不會有問題呢?00r28資訊網——每日最新資訊28at.com

step1:雙線程場景

public class ThreadTest1 {    int a = 1;    int b = 1;    public void add() {        System.out.println("add start");        for (int i = 0; i < 10000; i++) {            a++;            b++;        }        System.out.println("add end");    }    public void compare() {        System.out.println("compare start");        for (int i = 0; i < 10000; i++) {            boolean flag = a < b;            if (flag) {                System.out.println("a=" + a + ",b=" + b + "flag=" + flag + ",a < b = " + (a < b));            }        }        System.out.println("compare end");    }    public static void main(String[] args) {        ThreadTest1 threadTest = new ThreadTest1();        new Thread(() -> threadTest.add()).start();        new Thread(() -> threadTest.compare()).start();    }}

00r28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-11755-0.html一個關于 i++ 和 ++i 的面試題打趴了所有人

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 利用SpeechToText功能創建交互式語音助手應用程序的實現指南

下一篇: 徹底搞懂Spring的Bean加載

標簽:
  • 熱門焦點
Top 主站蜘蛛池模板: 哈尔滨市| 惠水县| 江口县| 东山县| 云安县| 甘洛县| 永定县| 盘山县| 淳化县| 奉新县| 民勤县| 兰西县| 保山市| 河曲县| 沂水县| 遵义市| 天峻县| 崇明县| 南汇区| 浦江县| 临沧市| 嘉峪关市| 普兰店市| 崇明县| 新余市| 景德镇市| 临沧市| 会同县| 息烽县| 正阳县| 边坝县| 海口市| 金寨县| 灯塔市| 中西区| 宁安市| 清镇市| 青浦区| 常宁市| 威宁| 铜陵市|