我已经使用Ctrl+ Shift+ F来纠正缩进,但我听说有另一种捷径可以做到:Ctrl+I
根据谷歌发现的参考, Ctrl+ Shift+ F是重新格式化, Ctrl+ I是正确的缩进.
它们之间有什么区别吗?或重新格式化和正确缩进之间?
我在使用dal时遇到了麻烦并尝试构建一个简单的例子.
我做的几乎与Django自动完成灯完全相同:字段未填充并且还应用了链接的答案.
以下是我经历的步骤:
步骤1)当我在html的标题上添加这样的内容时(与上面的答案相同):
<link href="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/vendor/select2/dist/css/select2.css" type="text/css" media="all" rel="stylesheet" />
<link href="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/select2.css" type="text/css" media="all" rel="stylesheet" />
<script type="text/javascript" src="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/autocomplete.init.js"></script>
<script type="text/javascript" src="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/select2.js"></script>
Run Code Online (Sandbox Code Playgroud)
浏览器检查器控制台的错误如下:
Uncaught ReferenceError: yl is not defined(anonymous function) @ autocomplete.init.js:75select2.js:117
Uncaught ReferenceError: yl is not defined(anonymous function) @ select2.js:117
Run Code Online (Sandbox Code Playgroud)
步骤2)所以我在dal库上添加了jquery.js和其他js文件:
<link href="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/vendor/select2/dist/css/select2.css" type="text/css" media="all" rel="stylesheet" />
<link href="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/select2.css" type="text/css" media="all" rel="stylesheet" />
<script type="text/javascript" src="http://dal-yourlabs.rhcloud.com/static/collected/admin/js/vendor/jquery/jquery.js"></script>
<script type="text/javascript" src="http://dal-yourlabs.rhcloud.com/static/collected/admin/js/jquery.init.js"></script>
<script type="text/javascript" src="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/jquery.init.js"></script>
<script type="text/javascript" src="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/autocomplete.init.js"></script>
<script type="text/javascript" src="http://dal-yourlabs.rhcloud.com/static/collected/autocomplete_light/select2.js"></script>
Run Code Online (Sandbox Code Playgroud)
错误改变如下:
select2.js:66 Uncaught TypeError: $(...).select2 …Run Code Online (Sandbox Code Playgroud) 两个问题.
当我们声明文字字符串时,我们搜索堆的字符串池中是否有相同的字符串.这也是一个实习生(课堂实习生String)?
在我看来,每个文字字符串声明都需要二进制搜索,所以当n是池中现有字符串的数量时,它至少要花费log(n).如果池中有许多字符串,则可能成本很高.(可能需要权衡搜索成本和内存?)从这个角度来看,声明mant文字字符串可能很危险. 这种搜索成本的重要性以及为什么以这种方式设计java(在声明文字字符串时搜索池).
以下是我所提到的理解背景.
字符串是不变的; 它们的值在创建后无法更改.字符串缓冲区支持可变字符串.因为String对象是不可变的,所以可以共享它们.
http://www.janeg.ca/scjp/lang/strLiteral.html评论:
换句话说,因为编译器知道字符串原始值在创建后无法更改,所以它可以安全地使用现有数据并避免使用重复项来弥补内存.