使用了未赋值的局部变量。。。可是我明明赋值了呀。。

代码:

string  content = AllFunctions.streamToString(stream, Encoding.UTF8);
            Regex regex = new Regex("\\/song\\?id=[0-9]{5,8}");   //歌曲id
            if (!regex.IsMatch(content))
            {
               return;
            }
            allurls = regex.Matches(content);  //所有匹配项
            random = new Random(Guid.NewGuid().GetHashCode());  //随机数
            index = random.Next(allurls.Count);  //
            listUrl = "http://music.163.com" + allurls[index]; 
            string songID = allurls[index].Value.Split('=')[1];  //在这里赋值的啊!

            musicUrl = "http://music.163.com/api/song/detail/?id=" + songID + "&ids=%5B" + songID + "%5D?csrf_token=" + csrf_token;   //在这里使用就没有错误!!
        getPlaySite: stream = AllFunctions.getOrPostUrl(musicUrl, 0, "", cookie, out outCookie, header, out outHeader, false, null, 0);  //获取歌曲播放链接
            content = AllFunctions.streamToString(stream, Encoding.UTF8);
            string mp3Url = "", songDuration = "";
            try
            {
                ///
            }
                        catch
                        {
                           return;
                        }

            musicUrl = "http://music.163.com/api/log/web?csrf_token=" + csrf_token;  //播放开始和结束的时候需要post的链接
            postData = "action=play&json={\"id\":\"" + songID + "\",\"type\":\"song\"}";

最后一句的时候,提示我songID没赋值,无法编译?
我明明在最前面赋值的了啊,而且前面使用都没有错误,最后一句就说没赋值??

第一次发帖,希望大家帮帮我,谢谢

4个回答

是不是跳到getPlaySite分支里没有对songID赋值?

A12116
石之审判 好吧,我把getSongSite标签去掉就好了。。。服了,竟然还可以这样,谢谢
4 年多之前 回复
A12116
石之审判 可是在最前面不是有值的吗,跳到能够里面不应该被清空的呀
4 年多之前 回复

是不是和这一段有关?

 try
            {
                return;
            }

你可以试试将出错的那一句一行一行往前移,看看到那一行不再出错了。

A12116
石之审判 回复91program: 我试了一下,发现是那个标签的问题,把getSongSite标签去掉就好了。。看来goto不能随便用。。谢谢了
4 年多之前 回复
91program
91program 回复石之审判: 你没有将出错的那一句移动 try 之前试试?如果你贴出来的代码是完整的,就只有这一段可能有影响。
4 年多之前 回复
A12116
石之审判 不是,这个try就是我处理异常的一个代码,在catch里面return的,不知道为什么,帖子没编辑成功
4 年多之前 回复

csrf_token在哪里定义的?

A12116
石之审判 在前面定义的,问题找到了,谢谢你能进来看
4 年多之前 回复

我今天也遇到了类似的问题,但是最后发现是粗心导致的,在for循环赋的值,但是在外面使用的,导致应该是一组值变成了一个值

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C# 使用了未赋值的局部变量 ,其实是赋值的
循环中已经给TAC 赋值,但是return 后面的TAC 报错说为赋值求指教。 ![图片说明](https://img-ask.csdn.net/upload/201809/04/1536023660_120850.png)
switch 未赋值的局部变量 求解 谢谢
int a = 1; string b; switch (a) { case 0: b = "0"; break; case 1: b = "1"; break; } textBox1.Text = b;
C# 为什么提示y为未赋值的局部变量 而变量x却没有出现此类提示
![图片说明](https://img-ask.csdn.net/upload/201504/28/1430196539_104742.png)
C语言全局变量和静态全局变量和局部变量和静态局部变量在初始化和未初始化时生存期和作用域的具体情况怎么样?
最近看《C程序设计》第五版唐浩强著对静态局部变量有这样一段: > 对静态局部变量是在编译时赋初值的,即只赋初值一次,在程序运行时它已有初值。以后每次调用函数时不再重新赋初值而只是保留上次函数调用结束时的值。 >如果在定义局部变量时不赋初值的话,则对静态局部变量来说,编译时自动赋初植 0(对数值型交量)或空字符'\0'(对字符变量)。 这里讲静态局部变量在编译赋初值,没有初值自动赋初植 0(对数值型交量)或空字符'\0'(对字符变量)。应该是在编译就分配了空间 在对生存期和作用域解释时又有这样的例子,如图 ![图片说明](https://img-ask.csdn.net/upload/201909/15/1568503873_431314.jpg) 这里讲静态局部变量c的生存期从它所在的函数开始,书上讲“如果一个变量值在某一时刻是存在的,则认为这一时刻属于该变量的生存期,获称该变量在此时刻“存在”“,似乎是说这个静态局部变量从它所在的函数开始才开始在内存分配空间。 是不是赋初值和在内存开辟空间是两个过程,网上有些东西好像是这个意思。还有对全局变量是不是也是编译赋初值?没有初值是不是自动给它赋值(网上好像有这么讲的),那什么时候在内存开辟空间呢(这个图上的生存期从main函数就开始)? 这些可能涉及计算机组成原理,我没学过,希望哪位高手能详细解释下,万分感谢!!!
C#中,怎么将一个窗体中已经改变的全局变量同步到另一个窗体中,将其赋值给局部变量
在全局变量定义的窗体中我定义了GlobalVariable.dianshu2和GlobalVariable.chishu2变量,然后在A窗体中给这两个全局变量都赋了值,在B窗体的一开始写了 static int dianshu= GlobalVariable.dianshu2; static int chishu= GlobalVariable.chishu2; double[,] m_X_ChiXiangCeLiangWeiZhi = new double[chishu,dianshu]; double[,] m_X_ChiXiangXiangDuiWeiZhi = new double[chishu,dianshu]; 我用了断点查找错误,发现GlobalVariable.dianshu2=4和GlobalVariable.chishu2=5; 但为什么它们的值是0呢
关于变量的连续赋值并引用问题。
在JS里先定义全局变量并赋值,然后定义方法重新定义并赋值变量,为什么在外面输出的是在方法里定义的局部变量的值? ``` var a=b=10; (function(){ var a=b=20; })() console.log(b); ``` b的值不应该是最顶上赋值的10么? 为什么输出出来是20? 哪位大佬能给解释下……
C# 变量赋值与改变问题
![图片说明](https://img-ask.csdn.net/upload/201601/10/1452415042_150984.png) ![图片说明](https://img-ask.csdn.net/upload/201601/10/1452415015_178305.png) 如上面的图片所示 将一个全局变量players[n]赋值给局部变量player 然后对局部变量play进行设置 赋值 然后发现全局变量players[n]也跟着改变了 这是为什么?
关于MATLAB中if语句内赋值问题
目标:截取整个矩阵中指定部分并保存,指定坐标在.mat文件position中,矩阵名mat,坐标名pos。 问题:未定义函数或变量 'mat'。或者 引用了已清除变量'mat'。 ``` clear; clc; path = 'D:\Workspace\name'; mat_list = dir(path); mat_list(1:2)=[]; for para = 1:length(mat_list) if contain('mat', para) load(cat(2, path, '\', mat_list(para).name)); end end target = mat(pos(2):pos(2)+pos(4),pos(1):pos(1)+pos(3),:); save([path, '\', mat_list(para).name, 'Final.mat'], 'target'); ``` pos 是一个1*4的矩阵,里面的元素指定的位置按照代码中的逻辑运算后,就是需要截取另存为的部分。 上面就是代码大致逻辑。 但是这个代码不是说mat未定义就是说mat已清除。。 查了一天的百度也没查到,看提示似乎是因为if函数内赋值和加载文件都是局部变量 然后我百度怎么局部转全局,结果只有global函数,如果可以赋值变量就可以,但是我有两个需要加载的.mat文件。。找不到办法赋值 有没有老师教教我这关怎么过。
如何将循环中的局部变量的引用赋值给循环外的vector
急!!!!C++ 新手,在写作业时遇到如下问题,希望大神可以帮忙看看,谢谢了!!! * vector< pair<double, Smile&> > pillarSmiles; vector<double> kmin, kmax; vector< pair<double, double> > marks; ArbitrageFreeInterpolator af; int a = 0; while(!fin.eof()) { double t; double atmvol; double ms25; double rr25; double ms10; double rr10; if (fin >> t >> atmvol >> ms25 >> rr25 >> ms10 >> rr10) { cout << t << "\t" << atmvol << "\t" << ms25 << "\t" << rr25 << "\t" << ms10 << "\t" << rr10 << std::endl; marks = input2Marks(spot, rd, rf, t, atmvol, ms25, rr25, ms10, rr10); af = ArbitrageFreeInterpolator(t, marks, spot, mu); pillarSmiles.push_back( pair<double, Smile&>(t, af) ); std::cout<< "pillarSmiles[" << a <<"].second.Vol(1.3)= "<<pillarSmiles[a].second.Vol(1.3)<<std::endl; kmin.push_back(marks.front().first); // for plotting the charts only kmax.push_back(marks.back().first); } a++; } ImpliedVol iv(pillarSmiles); ImpliedVol,Smile都是自定义的类,AbitrageFreeInterpolator是Smile的子类,声明如下: class ArbitrageFreeInterpolator : public Smile { public: ArbitrageFreeInterpolator(); ArbitrageFreeInterpolator(double _t, const vector< pair >& _marks, double _S, double _mu); virtual double Vol(double strike) const; private: vector< pair > marks; //M (k, sigma) input pairs; double S; // Spot price; double mu; // drift of spot; double t; //time to maturity(in unit of year); vector< pair > outputmarks; // N (k, c)pairs; vector y2; // second derivatives; }; Input文件内容如下: 1.25805 0.0100 0.0030 0.02 0.1550 0.0016 -0.0065 0.0050 -0.0111 0.04 0.1395 0.0016 -0.0110 0.0050 -0.0187 0.06 0.1304 0.0021 -0.0143 0.0067 -0.0248 ...... 然后我发现pillarSmile中存储的都是最后一次af的值,也就是每次重新给af赋值时,都会改变pillarSmile中以前输入的值,另外我也尝试过在循环外建一个AbitrageFreeInterpolator的vector,然后每次将循环内新定义的AbitrageFreeInterpolator赋值给这个vector, 结果会报错:Thread 1: EXC_BAD_ACCESS (code=1, address=0x0) 想知道各位有什么好的解决办法吗? 更新,采用一楼的建议,循环中改成了: ArbitrageFreeInterpolator* af = new ArbitrageFreeInterpolator(t, marks, spot, mu); pillarSmiles.push_back( pair<double, Smile&>(t, *af) ); delete af; cout出来的结果就不一样了,但是出现了一个新的问题,就是每次到pillaSmile最后几组的时候,出来的结果总是很大的异常值,有时候会中断,提示Thread 1:EXC_BAD_ACCESS(code=1,address=0x70) , 我查了下好像是访问已释放信息导致的,不太懂,想问下有什么解决的办法?
java局部变量问题求解答
关于java的局部变量问题,在方法中定义了一个局部变量,未赋值,然后在for语句里给其赋值,然后打印却报错,而如果在定义的时候就给它赋值,最后打印的则是在for语句里赋的值,这是什么原因啊?如下图所例,求大神们解答,想了很久都没想过来,求详解![图片](https://img-ask.csdn.net/upload/201511/22/1448189031_82657.png)
java类类型的局部变量指向类实例变量,改变该局部变量的值,但实例变量却没有变化
我在test类中定义一个类变量a,初始值为“不”,和方法v(),该方法内定义一个局部变量b,b引用了test中的类实例变量a,并对增加了字符串“好”。 再在main方法中实例化了一个test对象c,对c使用了v()方法。 结果是: c.v()=不好; c.a=不; 代码如下: ****test类:**** public class test { public String a="10"; public String v() { String b=a ; b=b+"1"; return b; } } ****main类:**** public static void main(String[] args) { test c=new test(); c.v(); System.out.println(c.v()); System.out.println(c.a); } 我的问题是我在方法subtraction()中定义的局部变量b已经引用了a,这两个都是String类,属于类对象,类对象的赋值不就是说a与b都指向同一个对象。那么此时a与b就是同一个变量,改变了b就是改变了a,为什么在main方法中我已经对c的b进行了修改,但对象c中的a的值没有变化. 具体机制是什么呢?
这道题怎么判断,什么时候的赋值属于全局变量,什么时候赋值只属于局部的。
以下代码运行的结果是输出 var a = b = 10; (function(){ var a=b=20 })(); console.log(b); A 10 B 20 C 报错 D undefined
一个方法中的字符串局部变量无论如何赋值都为始终为null
``` public String excuteTempSql(String sql_temp){ String front_id_string="12"; conn = DBUtil.getConnection(); try { stmt = conn.createStatement(); rs = stmt.executeQuery(sql_temp); while (rs.next()) { front_id_string = front_id_string+rs.getInt("room_id")+","; } front_id_string= front_id_string.substring(0, front_id_string.length()-1 ); } catch (SQLException e) { e.printStackTrace(); } System.out.println(front_id_string); return front_id_string; } ``` 为什么front_id_string赋值为“12”了(无论什么赋值),但是单点调试的时候显示为null。高层传到底层的sql_temp为查询语句。
C#中字段和局部变量的问题
我先写两个类Test1和Test2,目的是想不通过new调用另一个类中的方法 ``` public class Test1 { public void Method1() { Console.WriteLine("343"); } } public class Test2 { Test1 ts1; public void Say() { ts1.Method1(); } } ``` 这样,我在Test2中只需要声明一下就可以在Say()中调用他的方法了(这是我不理解的,使用一个类中的方法就要new一个该类的对象才可以。但是这个写成字段了不用new也可以啊。不是说C#中必须要new了才能使用吗?) 如果在Test2中这样写,就会报错(使用了为赋值的局部变量“ts1”) 图片说明](https://img-ask.csdn.net/upload/201705/31/1496207496_321992.jpg) ``` public class Test2 { public void Say() { Test1 ts1; ts1.Method1(); } } ```  只有这样,也是我一直以为的必须new ``` public class Test2 { public void Say() { Test1 ts2 = new Test1(); ts2.Method1(); } } ``` 这样才不会报错。 搞不懂,字段属性和对象我发现我突然不懂了……希望有大虾解答 -_-
C++循环体中的局部变量怎样在每次循环后内存清零,进行下次循环的时候再重新赋值
在做一道题 依次输入每个人的名字然后输入成绩,每个名字后面都跟着每个人的成绩,不是把人名输完再输成绩。 然后要求统计每个人几次成绩的和,依次输出每个人姓名以及他们的总成绩。这个怎么做? #include <iostream> #include <string> #include <vector> using namespace std; int main() { int r; vector<string> name; cout<<"人数:"; cin>>r; int *sum = new int[r]; int p=0;int w=0; while(w!=r) { typedef vector<double>::size_type longing; cout<<"姓名:"; int count=-1; string n; while (cin>>n) { name.push_back(n); count++; p++; cout << "请输成绩:"; int x; vector<int> grades; typedef vector<double>::size_type longing; while (cin>>x) { grades.push_back(x); } int Sum=0; longing l=grades.size(); for(int i=0;i!=l;i++) { Sum=grades[i]+Sum; if (i==l-1) { int e=count; sum[e]=Sum; } } } w++; } for (int i=0;i!=r;i++) { cout<<name[i]<<" "<<sum[i]<<endl; } delete [ ] sum; return 0; } 第二次循环的时候n还是第一次输入的名字,这个怎么办
Java实现1-100的完全数,为什么变量申明为成员变量没结果,为局部变量就有结果。
public class Test { public static void main(String args[]) { ComputerPerfectNum Com=new ComputerPerfectNum(); Com.perfectNum(); } } class ComputerPerfectNum { int temp=0; //申明为成员变量并在局部变量不再赋值就出不来结果。 public void perfectNum(){ for(int a=2;a<=100;a++){ //若不申明成为成员变量,在这申明成为局部变量就能出结果。 for(int b=1;b<a;b++){ if(a%b==0) {temp+=b;} } if(temp==a){ System.out.println("完全数="+a); } } } }
i = i++; 用反编译怎么解释 ?
![图片说明](https://img-ask.csdn.net/upload/201508/01/1438414923_657297.jpg) 按照对应的步骤: 0. 将0压入操作数栈 1. 弹出0 赋值给局部变量表第1位 2. 将局部变量表第1位压入操作数栈 3. 对局部变量表第1位做加1操作 (此时操作数栈为1) 6. 弹出1 赋值给局部变量表第1位 之后将1压入栈 怎么打印0呢 求大神解答
shell脚本,使用多进程后无法赋值。求助!
加上多进程代码后,始终无法改变name的值,好像赋值给局部变量了一样,如下图 ![图片说明](https://img-ask.csdn.net/upload/201705/12/1494579127_628119.png) 删除多进程后就没问题了,如下图 ![图片说明](https://img-ask.csdn.net/upload/201705/12/1494578909_115934.png) 这是怎么回事?
关于c++类内成员赋值的问题(大一基础)
本人大一计算机新生,学完c在学c++,看到一行代码如下: ``` #include <iostream> using namespace std; class stu { public: int a; int set(int n) { b = n; return b; } private: int b; }; int main() { stu s; cout << s.set(1); } ``` 这是一个用成员函数set给私有变量b赋值的程序,我想问一下,成员函数set里面直接用的b,也就是说成员私有变量b的作用域覆盖了成员函数set?那么我想知道: 1、是不是类中所有成员变量的标识符作用域都覆盖整个类的内部 2、如果(1)的答案是正确的话,那么如果我改一下成员函数:int set(int b),让形参标识符也是‘b’,(经vs测试没有报错)那么此时编译器又是怎么操作的呢,不会产生歧义么?(自己试了半天,也不知道该怎么测试才能说明问题,网上也找不到相关答案(捂脸)) 3、还有一点点关于构造函数的,对于无形参构造函数,它是对公有还是私有成员变量进行赋初值?而且同上问,它貌似也是上来直接啪啦啪啦把成员标识符一写、一赋值就ok了? //总之,最大的问题就是:类中给成员变量赋初值貌似就是直接在成员函数中直接操作(而没有什么访问什么的流程),这种方法真的不会跟同名的形参引起歧义么?成员函数内部跟整个类都是联通的?如果是的话,怎么解释同名形参不报错?如果不是联通的话,那么形参如果是同名的,整个成员函数始终只是玩弄一个局部变量,内部成员不会改变,没有达到预期的效果,还不如用更复杂严谨的语言进行访问改变?(感觉上是一个功能的漏洞...吗) 新人一枚,虽语无伦次,身无分文,却也是热爱着编程,所以希望大佬们理解一下0.0
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
前端 | 2. 正则
转载请注明以下: 本文转自清自以敬的博客:https://blog.csdn.net/qq_45791147 文章目录1.转义2.正则表达式初步2.1.匹配字符2.1.1.组成元素2.1.2.基础正则的设计 1.转义 转义的作用: 当某个字符在表达式中具有特殊含义,例如字符串引号中出现了引号,为了可以使用这些字符本身,而不是使用其在表达式中的特殊含义,则需要通过转义符“\”来构建该字符转义...
有哪些让程序员受益终生的建议
从业五年多,辗转两个大厂,出过书,创过业,从技术小白成长为基层管理,联合几个业内大牛回答下这个问题,希望能帮到大家,记得帮我点赞哦。 敲黑板!!!读了这篇文章,你将知道如何才能进大厂,如何实现财务自由,如何在工作中游刃有余,这篇文章很长,但绝对是精品,记得帮我点赞哦!!!! 一腔肺腑之言,能看进去多少,就看你自己了!!! 目录: 在校生篇: 为什么要尽量进大厂? 如何选择语言及方...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
Docker 从入门到掉坑
Docker 介绍 简单的对docker进行介绍,可以把它理解为一个应用程序执行的容器。但是docker本身和虚拟机还是有较为明显的出入的。我大致归纳了一下,可以总结为以下几点: docker自身也有着很多的优点,关于它的优点,可以总结为以下几项: 安装docker 从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Doc...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看...
白话阿里巴巴Java开发手册高级篇
不久前,阿里巴巴发布了《阿里巴巴Java开发手册》,总结了阿里巴巴内部实际项目开发过程中开发人员应该遵守的研发流程规范,这些流程规范在一定程度上能够保证最终的项目交付质量,通过在时间中总结模式,并推广给广大开发人员,来避免研发人员在实践中容易犯的错误,确保最终在大规模协作的项目中达成既定目标。 无独有偶,笔者去年在公司里负责升级和制定研发流程、设计模板、设计标准、代码标准等规范,并在实际工作中进行...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
Python 编程开发 实用经验和技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法和技巧,包括小数保留指定位小数、判断变量的数据类型、类方法@classmethod、制表符中文对齐、遍历字典、datetime.timedelta的使用等,会持续更新......
YouTube排名第一的励志英文演讲《Dream(梦想)》
Idon’t know what that dream is that you have, I don't care how disappointing it might have been as you've been working toward that dream,but that dream that you’re holding in your mind, that it’s po...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC...
相关热词 c#中dns类 c#合并的excel c# implicit c#怎么保留3个小数点 c# 串口通信、 网络调试助手c# c# 泛型比较大小 c#解压分卷问题 c#启动居中 c# 逻辑或运算符
立即提问