C# 如何把值类型的变量作为引用加入到list中?

如题,假设需要把一个int或bool变量add到list中,并通过原来的变量名修改list中的值(即需要传引用),除了封装成class外还有其他的方法吗?

c#

2个回答

非常非常遗憾,.NET里是有一个方法可以将值类型作为引用类型使用的,然而我忘记了,而且google了一圈也没找到,看来这是一个非常底层,知道的人非常少的方法。
如果我什么时候想起来了,我会补充,真的非常遗憾。

大致等效下面的代码

using System;

namespace Q713731
{
    unsafe class Program
    {
        static void Main(string[] args)
        {
            bool b = false;
            Console.WriteLine(b);
            bool*[] arr = new bool*[10];
            arr[0] = &b;
            *arr[0] = true;
            Console.WriteLine(b);
        }
    }
}

但是这是不安全的代码。

也可以自己写一个类,这样就可以包含多个不同类型的数据。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C# 如何将一个类中全部字段添加到List中(字段为自定义类,引用类型,不是值类型)?

自定义了一个类,里面包含了很多字段(也是自定义的类),如何将类中的字段全部添加到list中 做这个功能主要是为了能够通过list来访问FileInfoInIni,调用FileInfoInIni的方法。 或者哪位大神有更好的办法能实现这个功能也行 ``` class SystemParamClass { public String ModelFileSavePathName = "D:/Data/SystemParam";//保存参数的文件夹名称 public String ModelSystemParamFileName = "/SystemParam.ini"; public List<FileInfoInIni> AllIniParam = new List<FileInfoInIni>(); public FileInfoInIni LeftDownCamGrapImageHeight; public FileInfoInIni LeftDownCamGrapImagePoseX; public FileInfoInIni LeftDownCamGrapImagePoseY; public FileInfoInIni RightDownCamGrapImageHeight public FileInfoInIni RightDownCamGrapImagePoseX; public FileInfoInIni RightDownCamGrapImagePoseY; } ``` 如何写一个方法,自动将 FileInfoInIni 全部添加到 AllIniParam 中 FileInfoInIni  为自定义的类,我试过了反射,只能设置值,不知道怎么转换类型,然后添加进去 ``` public static void AddTolist(object TempClass) { Type t = TempClass.GetType(); FieldInfo[] fields = t.GetFields(BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public); foreach (FieldInfo field in fields) { if (field.FieldType == typeof(FileInfoInIni)) { Console.WriteLine("Field:" + field); Console.WriteLine("Field:" + field.Name ); } //Console.WriteLine("Field:" + field); } } ``` 不能强制转换类型 ![图片说明](https://img-ask.csdn.net/upload/201911/15/1573789359_269905.jpg) FileInfoInIni的定义 ``` public class FileInfoInIni { private string FilePathAndName; private string FileSection; private string FileAppName; public object Value; public string Key { get => FileAppName; } [DllImport("kernel32", CharSet = CharSet.Ansi, EntryPoint = "GetPrivateProfileStringA", ExactSpelling = true, SetLastError = true)] private static extern int GetPrivateProfileString([MarshalAs(UnmanagedType.VBByRefStr)] ref string lpApplicationName, [MarshalAs(UnmanagedType.VBByRefStr)] ref string lpKeyName, [MarshalAs(UnmanagedType.VBByRefStr)] ref string lpDefault, [MarshalAs(UnmanagedType.VBByRefStr)] ref string lpReturnedString, int nSize, [MarshalAs(UnmanagedType.VBByRefStr)] ref string lpFileName); [DllImport("kernel32", CharSet = CharSet.Ansi, EntryPoint = "WritePrivateProfileStringA", ExactSpelling = true, SetLastError = true)] private static extern int WritePrivateProfileString([MarshalAs(UnmanagedType.VBByRefStr)] ref string lpApplicationName, [MarshalAs(UnmanagedType.VBByRefStr)] ref string lpKeyName, [MarshalAs(UnmanagedType.VBByRefStr)] ref string lpString, [MarshalAs(UnmanagedType.VBByRefStr)] ref string lpFileName); public string GetINI(string Section, string AppName, string lpDefault, string FileName) { string text = Strings.LSet("", 256); FileInfoInIni.GetPrivateProfileString(ref Section, ref AppName, ref lpDefault, ref text, Strings.Len(text), ref FileName); return Strings.Left(text, checked(Strings.InStr(text, "\0", CompareMethod.Binary) - 1)); } public long WriteINI(string Section, string AppName, string lpDefault, string FileName) { return (long)FileInfoInIni.WritePrivateProfileString(ref Section, ref AppName, ref lpDefault, ref FileName); } public bool ReadValue() { bool result; try { this.Value = this.GetINI(this.FileSection, this.FileAppName, "", this.FilePathAndName); bool flag = Operators.ConditionalCompareObjectEqual(this.Value, "", false); if (flag) { result = false; return result; } } catch (Exception expr_41) { ProjectData.SetProjectError(expr_41); result = false; ProjectData.ClearProjectError(); return result; } result = true; return result; } public bool SaveValue() { bool result; try { string left = this.Value.ToString(); this.WriteINI(this.FileSection, this.FileAppName, Conversions.ToString(this.Value), this.FilePathAndName); string iNI = this.GetINI(this.FileSection, this.FileAppName, "", this.FilePathAndName); bool flag = Operators.CompareString(left, iNI, false) != 0; if (flag) { result = false; return result; } } catch (Exception expr_71) { ProjectData.SetProjectError(expr_71); result = false; ProjectData.ClearProjectError(); return result; } result = true; return result; } public FileInfoInIni(string TempFilePathAndName, string TempFileSection, string TempFileAppName) { this.Value = RuntimeHelpers.GetObjectValue(new object()); this.FilePathAndName = TempFilePathAndName; this.FileSection = TempFileSection; this.FileAppName = TempFileAppName; this.Value = null; } public void dispose() { this.FilePathAndName = ""; this.FileSection = ""; this.FileAppName = ""; this.Value = null; } } ```

C# 一个全局变量总是自动变成初始值

C# 一个全局变量总是自动变成初始值 如题,在class中定义了一个枚举类型的变量, ``` public partial class XXXXDlg : Form { private enum POSOFITEMICONSTYLE { POSLARGEICONS, POSSMALLICONS, POSLIST, POSTITLE, POSDETAILS }; private static POSOFITEMICONSTYLE iCurrentSelectedItemIconStyle = new POSOFITEMICONSTYLE ( ); } ``` 我在某些方法中给iCurrentSelectedItemIconStyle赋过值了(调试时也确实看到它的值已经改变了),但当用到iCurrentSelectedItemIconStyle时,它又变成了初始值POSLARGEICONS。 赋值时和使用时,当前的Form是没有关闭的,Form周期还没有结束的。。。 小弟新手,一直没搞明白这是为什么,所以来向各位大神求救。

C# 反射获取到类型object的变量

C# 反射获取到类型object的变量(本质是List<T>),如何读取List<T>里面的T的值和数 大概是: 反射到了一个类里面所有声明的变量,其中一个变量是LIST<T>类型的,现在只想得到这个变量的值或者是T的类型

C# List<T> 引用类型赋值问题

今天用泛型foreach遍历赋值引用类型。碰到一个很坑爹的问题,求解答? 入下图:第一例的数据被第二列数据覆盖 ![图片说明](https://img-ask.csdn.net/upload/201603/30/1459323464_826572.png) ![图片说明](https://img-ask.csdn.net/upload/201603/30/1459323613_265248.jpg)

C# 在函数中new一个引用类型的参数,为什么就不会改变这个参数的值了

protected void Page_Load(object sender, EventArgs e) { string[] strArr = { "111", "222" }; Pp(strArr); } public void Pp(string[] urls) { urls = new string[1]; urls[0] = "333"; } 结果strArr的还是原来的 { "111", "222" } 但是如果我Pp函数这么写: public void Pp(string[] urls) { urls[0] = "333"; } strArr的就会变成 { "333", "222" } 这是为什么呀?

C# foreach循环var变量类型

C# foreach循环 foreach (XmlNode item in node) { } 这儿的循环,如果把XmlNode换成var会报错,为什么? 不是自动识别类型的吗

C#怎么让三个变量的值关联起来

我想让三个值关联起来调用,现在我是这么写的 Dictionary<string, string> dc = new Dictionary<string, string>(); try { dc.Add(queueName, routeKey1); dc.Add(queueName1, routeKey2); } catch { } Dictionary<string, string> dc1 = new Dictionary<string, string>(); try { dc1.Add(queueName, qmAddress); dc1.Add(queueName1, qmAddress1); } catch { } foreach (string key in dc.Keys) { queueName_Use = key; routeKey_Use = dc[key]; qmAddress_Use = dc1[key]; } 但是感觉数据量大了非常不好处理,有没有其他的方法可以让三个值关联起来的

用vs2012 C#编写mysql数据库软件,如何将查询到的值赋值给程序里的变量

从网上找的代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Threading.Tasks; using MySql.Data.MySqlClient; namespace MySQL { class MySQLConn { private string MySqlCon = "Database=mydb;Data Source=127.0.0.1;User ID=root;Password=123;charset=utf8;"; public DataTable ExecuteQuery(string sqlStr) {//查 MySqlCommand cmd; MySqlConnection con; MySqlDataAdapter msda; con = new MySqlConnection(MySqlCon); con.Open(); cmd = new MySqlCommand(sqlStr,con); cmd.CommandType = CommandType.Text; DataTable dt = new DataTable(); msda = new MySqlDataAdapter(cmd); msda.Fill(dt); con.Close(); return dt; } public int ExecuteUpdata(string sqlStr) { MySqlCommand cmd; MySqlConnection con; con = new MySqlConnection(MySqlCon); con.Open(); cmd = new MySqlCommand(sqlStr, con); cmd.CommandType = CommandType.Text; int iud = 0; iud = cmd.ExecuteNonQuery(); con.Close(); return iud; } } } 用这个类我可以可以实现简单的查询,更新功能(见图片![![图片说明](https://img-ask.csdn.net/upload/201705/10/1494423825_900165.png)图片说明](https://img-ask.csdn.net/upload/201705/10/1494423815_916244.png)) ## 但不知道如何把查询到的某个值赋值给变量 ## 比如从student(name,no,birth)中查询到name让后在程序里设置变量string myname,把查到的name赋值给myname。

C#特殊的两个double类型变量相加问题

今天在两个double型变量求和时发现一个很奇怪的问题。问题如下: 0.35+0.32=0.66999999999999993 系统环境:32位XP 开发环境:vs2010 调试时用 “即时窗口”运算也会出现这个问题。 类似的还有 0.35+0.31=0.65999999999999992 0.25+0.21=0.45999999999999996 想明白其中的原理,或者这是个编译器的bug?望大神指教

c# vs list类型转换问题

![图片说明](https://img-ask.csdn.net/upload/201901/28/1548647497_774782.png) ![图片说明](https://img-ask.csdn.net/upload/201901/28/1548647505_219760.png)

C#中List容器添加元素的问题

我现在有这样的一个类,这个类里有一个存放两个祖先节点的List,这个List用来存放父亲节点和母亲节点。然后还有一个用来存放夫妻节点的节点类型的变量。首先我实例化节点1,然后调用节点1创建夫妻节点的方法(这个方法会创建一个节点2作为节点1的夫妻节点)。然后我对节点1调用创建祖先的方法,这时候会创建节点1的父节点、母节点,添加到节点1的list中。接下来对节点2调用创建祖先的方法,这是后同上,也会创建父节点和母节点添加到节点2的list中。 以上是我觉得正常的过程,现在不正常的出现了,在我调用节点1的创建祖先方法时,当我添加一个节点时,在节点2的list中也会出现相同的节点。。。。这是为什么啊,我知道list是引用传递,但我这里是两个完全不同的list,这是什么情况。。。。。求大神们给个科学的解答,最好能再给个解决方案,谢谢各位了

请教为什么c#中list无法添加

首先,我定义了一个三维点的结构体 public struct thrDemPoint { public int id; public float x; public float y; public float z; public thrDemPoint(int ID, float X, float Y, float Z) { id = ID; x = X; y = Y; z = Z; } }//点结构 然后,定义了一个List以及一个点 List<thrDemPoint> thrDemPoints = new List<thrDemPoint>(); thrDemPoint p1 = new thrDemPoint(1, 0, 0, 0); 但是,向list中 thrDemPoints.Add(p1); 是无效的,萌新请问为什么...

C#Oracle并非所有变量都已绑定

请问大家:运行程序,错误提示为“并非所有变量都已绑定”,不知道是哪里的错误,请大神帮帮忙,希望能举例说明,否则不知道怎么操作?谢谢!!!补充:从页面选定下拉列表值,传递给控制器,以此条件,对oracle数据库进行查询。 public class C_F_BuyCertController : Controller { public ActionResult Getlist() { string category = ""; if (Request.Params["category"] != null) category = Request.Params["category"]; string chemical = ""; if (Request.Params["chemical"] != null) chemical = Request.Params["chemical"]; DataTable dt = new DataTable(); if(chemical!="")dt = ReList(chemical,category); List<C_F_BuyCert> modellist = new List<C_F_BuyCert>(); int rowscount = dt.Rows.Count; if (rowscount > 0) { C_F_BuyCert buycert; for (int n = 0; n < rowscount; n++) { buycert = new C_F_BuyCert(); buycert.C_Id = dt.Rows[n]["C_ID"].ToString(); buycert.Buy_Id = dt.Rows[n]["BUY_ID"].ToString(); buycert.Spy_Id = dt.Rows[n]["SPY_ID"].ToString(); buycert.Unit = dt.Rows[n]["UNIT"].ToString(); buycert.Amount = Convert.ToInt32(dt.Rows[n]["AMOUNT"]); buycert.PassAmount = Convert.ToInt32(dt.Rows[n]["PASS_AMOUNT"]); buycert.Db_Source = dt.Rows[n]["DB_SOURCE"].ToString(); modellist.Add(buycert); } } ViewData.Add("list", modellist); return View(); } public DataTable ReList(string chemical,string category) { string ConnectString = "data source=172.16.60.144/orcl;User Id=yzd4hub;Password=yzd4hub;"; OracleConnection conn = new OracleConnection(ConnectString);//Data Source后面跟数据库的名字,User ID为用户名,Password为密码 DataTable dt = new DataTable(); OracleParameter chem = new OracleParameter(":chemical", OracleType.VarChar, 50); OracleParameter cat = new OracleParameter(":category", OracleType.VarChar, 50); try { conn.Open(); string sql = "select a.c_id,a.buy_id,a.spy_id,a.unit,a.amount,a.pass_amount,a.db_source from c_f_buycert a,c_d_chemical b where a.c_id=b.c_id and b.c_name=:chem and b.kind_key=:cat"; OracleCommand cmd = new OracleCommand(sql, conn); cmd.Parameters.Add(chem); cmd.Parameters.Add(cat); OracleDataAdapter oda = new OracleDataAdapter(cmd); oda.Fill(dt); return dt; } finally { conn.Close(); } } } <dd> <div class="editor-label"> 化学品种类: </div> <div class="editor-field"> <select id="category" name="category" onchange="getChemical()"> <option value=" ">全部化学品 </option> <option value="第一类易制毒化学品">第一类易制毒化学品</option> <option value="第二类易制毒化学品">第二类易制毒化学品</option> <option value="第三类易制毒化学品">第三类易制毒化学品</option> </select> <br /> </div> <div class="editor-label"> 化学品名称: </div> <div class="editor-field"> <select id="chemical" name="chemical"> <option value=" ">化学品名称</option> </select> </div> </dd> <br /> <dd> <input id="Submit1" type="submit" value="查询" onclick="~/Controllers/C_F_BuyCertController/Getlist()" /> <input id="Reset1" type="reset" value="重置" /> </dd> </dl>

C#类的继承,C#有public,protected,private这几种继承之说吗??

如果没有,那是以哪种形式继承; 如果父类 有1.private 变量,2.protected变量 ,3.public变量, 在子类中这几个变量是什么,是private 、protected、public。

C#中如何做泛型类型限制

情况如下: 定义一个类aa; 另一个包含泛型方法类 ``` BB { 有数个由aa派生的子类如a1 a2 a3 public test <T>(<T> test) { xxxx; } } ``` 1.请问如何限制T使T仅是当前BB类中从aa中派生的子类a1 a2 a3中的一个。 2.若bb类可被继承,继承的类可继续派生a4 a5 a6.....能否不需重写test方法,即限制具有通用性。 非常感谢!!!

使用c#语言获取sql查询结果并存入变量.

select 部门,sum(工资) from table group by 部门 上面的sql语句应该是对部门进行分组求工资的总和, 假如分组后有3个部门,用C#语言如何获取这三个部门的工资总和? 也就是要获取三个数值.最好把这三个数值存入变量 i1,i2,i3中. 我是新手,希望高手能说详细些.

C#中如何构造一个兼容多种参数类型的类用以传递不同类型的消息?

大家好!设有一个类Hero,现在需在多个不同的Hero实例之间传递消息,为此我的实现方式是:为Hero实现1个专门接收消息的方法OnMessage(),并定义1个专门携带消息的类Telegram。当A要向B发送消息时,把消息内容写在Telegram中,并调用B.OnMessage(Telegram)进行消息传递。 **现在遇到的困难是:当可能发送的消息内容包含多种变量类型(例如,可能是int、string、List<string>、string数组等)时,如何编写代码使得程序更简洁?** 具体请看我目前的实现(代码不够简洁): 1、首先在Hero类中,增加专门接收并处理消息的方法OnMessage() ``` class Hero() { public void OnMessage(Telegram t)//t携带了具体的消息,详见下文 { //t.index标识了应该调用哪个方法处理这条消息,例如: switch(t.index) { case 1: //方法1 case 2: //方法2 } } } ``` 2、其次,定义1个结构体Telegram,专门用来携带具体消息内容,它有2个成员变量:index(标识应调用哪个方法处理本消息)和info(携带具体消息内容) ``` struct Telegram { public int index;//用来标识应调用哪个方法处理本消息,每个index都对应着Hero类中一个具体的处理方法 //注:由于不同的方法对应的参数类型是不同的,例如,方法1的参数是int、方法2的参数是string、方法3的参数是string数组……,所以我的实现方式比较繁琐,如下 public int info_int;//当这条消息打算发给方法1进行处理时,把消息内容赋值给这个变量,其他的info变量不赋值 public string info_string;//当这条消息打算发给方法2进行处理时,把消息内容赋值给这个变量,其他的info变量不赋值 public string[] info_stringArray;//当这条消息打算发给方法3进行处理时,把消息内容赋值给这个变量,其他的info变量不赋值 } ``` 3、因此,OnMessage()的内容实际上是这样的: ``` class Hero() { public void OnMessage(Telegram t) { switch(t.index) { case 1://调用方法1,且参数类型为int func1(t.info_int); break; case 2://调用方法2,且参数类型为string func2(t.info_string); break; case 3://调用方法3,且参数类型为string数组 func3(t.info_stringArray); break; default: } } } ``` **情况描述完毕了,主要想请教的就是:以上Telegram中几个不同的info变量,能否统一成1个变量?** ``` //期望能做到这样的效果: class Hero() { public void OnMessage(Telegram t) { switch(t.index) { case 1: func1(t.info);//该方法的输入参数为int,而且会把t.info当做int进行处理 break; case 2: func2(t.info);//该方法的输入参数为string,而且会把t.info当做string进行处理 break; case 3: func3(t.info);//该方法的输入参数为string数组,而且会把t.info当做string数组进行处理 break; default: } } } ``` 对了,截至目前为止我尝试的思路有以下几种,在此列出也是希望大家能帮忙指点一下(尤其是思路2和思路3是否可行),十分感谢: 1、将info定义为Object,赋值、传参时全部以Object进行操作。但存在问题是:反复的装箱、拆箱操作影响效率(程序运行时消息传递非常频繁)。因此该方案放弃了。 2、将info定义为自定义格式文本或json,传参之后再自行解析。但这块我还没有深入学习,此外担心json转换过程中是否存在类似于Object装箱拆箱影响效率的问题? 3、利用C#的泛型。但这块我学习的也不足,目前的尝试仍然失败了,如下所示 (3.1)定义1个泛型类MsgInfo<T> ``` public class MsgInfo<T> { public T obj; public MsgInfo(T objInput) { this.obj = objInput; } } ``` (3.2)在Telegram中使用它,结果出错了 ``` struct Telegram { public int index; public MsgInfo<T> info;//注:此处是会报错的,因为泛型类在实例化时必须制定变量类型,因此这里是不能写T的,只能写int、string等等 } ``` 由于没有余额了,无法发起悬赏,非常抱歉~

C# 使用了未赋值的局部变量 ,其实是赋值的

循环中已经给TAC 赋值,但是return 后面的TAC 报错说为赋值求指教。 ![图片说明](https://img-ask.csdn.net/upload/201809/04/1536023660_120850.png)

C#单链表添加元素时局部变量为什么会影响整个链表?

![图片说明](https://img-ask.csdn.net/upload/202001/06/1578298645_209427.png) 初学数据结构,学单链表的时候发现,选中的这部分Add方法里用到了局部变量temp,为什么对这个局部变量的操作会影响链表的结果,局部变量不是应该只在这个方法中有效吗?

大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了

大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

springboot+jwt实现token登陆权限认证

一 前言 此篇文章的内容也是学习不久,终于到周末有时间码一篇文章分享知识追寻者的粉丝们,学完本篇文章,读者将对token类的登陆认证流程有个全面的了解,可以动态搭建自己的登陆认证过程;对小项目而已是个轻量级的认证机制,符合开发需求;更多精彩原创内容关注公主号知识追寻者,读者的肯定,就是对作者的创作的最大支持; 二 jwt实现登陆认证流程 用户使用账号和面发出post请求 服务器接受到请求后使用私...

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

程序员写出这样的代码,能不挨骂吗?

当你换槽填坑时,面对一个新的环境。能够快速熟练,上手实现业务需求是关键。但是,哪些因素会影响你快速上手呢?是原有代码写的不够好?还是注释写的不够好?昨夜...

外包程序员的幸福生活

今天给你们讲述一个外包程序员的幸福生活。男主是Z哥,不是在外包公司上班的那种,是一名自由职业者,接外包项目自己干。接下来讲的都是真人真事。 先给大家介绍一下男主,Z哥,老程序员,是我十多年前的老同事,技术大牛,当过CTO,也创过业。因为我俩都爱好喝酒、踢球,再加上住的距离不算远,所以一直也断断续续的联系着,我对Z哥的状况也有大概了解。 Z哥几年前创业失败,后来他开始干起了外包,利用自己的技术能...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

2020阿里全球数学大赛:3万名高手、4道题、2天2夜未交卷

阿里巴巴全球数学竞赛( Alibaba Global Mathematics Competition)由马云发起,由中国科学技术协会、阿里巴巴基金会、阿里巴巴达摩院共同举办。大赛不设报名门槛,全世界爱好数学的人都可参与,不论是否出身数学专业、是否投身数学研究。 2020年阿里巴巴达摩院邀请北京大学、剑桥大学、浙江大学等高校的顶尖数学教师组建了出题组。中科院院士、美国艺术与科学院院士、北京国际数学...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

早上躺尸,晚上干活:硅谷科技公司这么流行迟到?

硅谷科技公司上班时间OPEN早已不是什么新鲜事,早九晚五是常态,但有很多企业由于不打卡,员工们10点、11点才“姗姗来迟”的情况也屡见不鲜。 这种灵活的考勤制度为人羡慕,甚至近年来,国内某些互联网企业也纷纷效仿。不过,硅谷普遍弹性的上班制度是怎么由来的呢?这种“流行性迟到”真的有那么轻松、悠哉吗? 《动态规划专题班》 课程试听内容: 动态规划的解题要领 动态规划三大类 求最值/计数/可行性 常...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

终于懂了TCP和UDP协议区别

终于懂了TCP和UDP协议区别

Python爬虫,高清美图我全都要(彼岸桌面壁纸)

爬取彼岸桌面网站较为简单,用到了requests、lxml、Beautiful Soup4

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

Java岗开发3年,公司临时抽查算法,离职后这几题我记一辈子

前几天我们公司做了一件蠢事,非常非常愚蠢的事情。我原以为从学校出来之后,除了找工作有测试外,不会有任何与考试有关的事儿。 但是,天有不测风云,公司技术总监、人事总监两位大佬突然降临到我们事业线,叫上我老大,给我们组织了一场别开生面的“考试”。 那是一个风和日丽的下午,我翘着二郎腿,左手端着一杯卡布奇诺,右手抓着我的罗技鼠标,滚动着轮轴,穿梭在头条热点之间。 “淡黄的长裙~蓬松的头发...

大胆预测下未来5年的Web开发

在2019年的ReactiveConf 上,《Elm in Action》的作者Richard Feldman对未来5年Web开发的发展做了预测,很有意思,分享给大家。如果你有机会从头...

立即提问
相关内容推荐