我在python解释器中尝试了以下内容:
>>>
>>> a = []
>>> b = {1:'one'}
>>> a.append(b)
>>> a
[{1: 'one'}]
>>> b[1] = 'ONE'
>>> a
[{1: 'ONE'}]
>>>
Run Code Online (Sandbox Code Playgroud)
这里,在将字典'b'附加到列表'a'之后,我正在改变字典'a'中与键1对应的值.不知怎的,这种变化也反映在列表中.当我将字典附加到列表中时,我不只是附加字典的值吗?看起来好像我已经将一个指向字典的指针附加到列表中,因此对字典的更改也会反映在列表中.
我不希望更改反映在列表中.我该怎么做?
感谢您的时间!
我一直在与两个视图控制器之间的数据传递斗争几天,并且变得非常困惑.我是Objective-C的新手,并且发现一些棘手的部分让我头脑发热.
我有一个导航控制器,FirstView是一个表单,在这个表单上我有一个加载SecondView的按钮,其中包含一个TableView供用户选择一些选项.然后我想将选择传递回FirstView控制器并显示数据等...
我已经阅读了很多关于这个(stackoverflow,iphonedevsdk,CS 193P资源)和我见过的选项,
1)应用程序委托中的ivar(脏而不推荐)2)创建单例3)创建数据模型类4)使用协议和委托(由apple推荐)
我想做正确的事情,并希望在我的计划中使用选项4 - 代表
问题是,我不了解代表以及如何设置和实现它们.
任何人都可以提供有关如何使用委托和2个视图控制器设置和传递NSArray的基本示例.
在此先感谢马特
我有这样的代码来使用BufferedReader以下方法读取文本文件:
BufferedReader reader=null;
try {
reader = new BufferedReader(new FileReader("file1.txt"));
while (reader.ready()) {
final String line = reader.readLine();
System.out.println("<"+line+">");
} catch (..)
{
...
}
Run Code Online (Sandbox Code Playgroud)
它工作正常但Findbugs报告警告:
NP_DEREFERENCE_OF_READLINE_VALUE:取消引用调用readLine()的结果,而不检查结果是否为null.如果没有更多的文本行要读取,readLine()将返回null并且取消引用将生成空指针异常.
当我换FileReader到StringReader,即
BufferedReader reader=null;
try {
reader = new BufferedReader(new StringReader("ABCD"));
while (reader.ready()) {
final String line = reader.readLine();
System.out.println("<"+line+">");
} catch (..)
{
...
}
Run Code Online (Sandbox Code Playgroud)
该readLine方法返回null,而ready方法总是返回true-这确实是一个无限循环.
这似乎即使返回readLine也可能返回.但是为什么不同的行为会有所不同?nullreadytrueReader
更新:
我知道读取文本文件的正常方法(就像Peter和Ali所说的那样).但我从同事那里读到了那段代码,并意识到我不知道这个ready方法.然后我读了JavaDoc,但不明白block.然后我做了一个测试并发布了这个问题.所以,提出这个问题的更好方法可能是: …
我正在使用Sortable并开始工作.但我正试图保存列表中的内容.
假设我有3个列表:
<ul id="top" class="connectedSortable">
<li>elem1</li>
<li>elem2</li>
<li>elem2</li>
</ul>
<ul id="left" class="connectedSortable">
</ul>
<ul id="right" class="connectedSortable">
</ul>
Run Code Online (Sandbox Code Playgroud)
jQuery的:
$("#top, #left, #right")
.sortable({
connectWith: ".connectedSortable",
stop: function(event, ui)
{
alert(this.id); // printing top, left right...
}
})
.disableSelection();
Run Code Online (Sandbox Code Playgroud)
我试过stop在可排序的内部使用事件,但它ul当然只返回了id.所以,我要的是jQuery来告诉我,当我搬到elem1从list1到list2(或任何elemX时候).
我正在尝试创建一个用户可以自己定义布局的主页.
我正在为PHPUnit开发一个Vim编译器插件.
我写了以下内容errorformat.正确提取错误消息,但文件和行号不是.
CompilerSet errorformat=%E%n)\ %.%#,
\%C%m,
\%+C%$,
\%C%f:%l,
\%Z%$
Run Code Online (Sandbox Code Playgroud)
PHPUnit的输出看起来像这样:
PHPUnit 3.5.12 by Sebastian Bergmann.
............................................................... 63 / 134 ( 47%)
.........................E.....
Time: 0 seconds, Memory: 11.25Mb
There was 1 error:
1) SomeClassTest::testSomething
Undefined property: SomeClass::$var
/path/to/SomeClass.php:99
/path/to/SomeClassTest.php:15
FAILURES!
Tests: 94, Assertions: 170, Errors: 1.
Press ENTER or type command to continue
Run Code Online (Sandbox Code Playgroud)
我很高兴报告的文件和行成为堆栈跟踪中的第一个或最后一个条目.最深刻的呼吁是问题的实际来源.跳转到顶级调用意味着我可以用来进入调用堆栈.SomeClassTest.php:15在上面的例子中,我更喜欢后者.
我正在尝试将Data.Binary.PutM monad修改为monad转换器.所以我从changin的定义开始
newtype PutM a = Put { unPut :: PairS a }Run Code Online (Sandbox Code Playgroud)
至
newtype PutM a = Put { unPut :: Identity (PairS a) }Run Code Online (Sandbox Code Playgroud)
然后我当然改变了return和>> =函数的实现:
从:
return a = Put $ PairS a mempty
{-# INLINE return #-}
m >>= k = Put $
let PairS a w = unPut m
PairS b w1 = unPut (k a)
in PairS b (w `mappend` w1)
{-# INLINE (>>=) #-}
m >> k = Put …Run Code Online (Sandbox Code Playgroud) 我使用的是ruby-1.8.7-p302/Rails 2.3.11.我正在尝试使用FQL(Facebook API)获取链接的统计信息.这是我的代码:
def stats(fb_post_url)
url = BASE_URI + "?query=#{URI.encode("select like_count from link_stat where url=\"#{fb_post_url}\"")}"
parsed_url = URI.parse(url)
http = Net::HTTP.new(parsed_url.host, parsed_url.port)
request = Net::HTTP::Get.new(parsed_url.request_uri)
response = http.request(request)
response.inspect
end
Run Code Online (Sandbox Code Playgroud)
这是错误:
EOFError: end of file reached
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/protocol.rb:135:in `sysread'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/protocol.rb:135:in `rbuf_fill'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/timeout.rb:67:in `timeout'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/timeout.rb:101:in `timeout'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/protocol.rb:134:in `rbuf_fill'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/protocol.rb:116:in `readuntil'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/protocol.rb:126:in `readline'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/http.rb:2028:in `read_status_line'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/http.rb:2017:in `read_new'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/http.rb:1051:in `request'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/http.rb:1037:in `request'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/http.rb:543:in `start'
from /home/rahul/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/http.rb:1035:in `request'
from /home/rahul/Work/Radr/lib/fb_stats.rb:13:in `stats'
from (irb):10 …Run Code Online (Sandbox Code Playgroud) 在我的一个Android应用中,我需要加载特定语言的字符串.例如:
values: <string name="txt_help">Help</string>
values-de: <string name="txt_help">Hilfe</string>
values-fr: <string name="txt_help">Aider</string>
Run Code Online (Sandbox Code Playgroud)
现在我需要默认(值)文本.
有没有办法加载给定语言"en"的密钥"txt_help"?我找不到可以将语言环境设置为附加参数的方法.
或者我可以创建具有给定语言环境的新ResourceManager并通过此资源对象读取String吗?
提前谢谢了.HJW
大家好我的应用程序有问题,请参阅下面的代码以供参考.我面临的问题是当我从我的模拟器中点击后退键按钮时,我希望我的应用程序问我你确定要退出.当我按是然后它应该退出否则它不应该退出.我做了所有的事情,但当我点击后退键按钮时,它会显示一个对话框并自动退出.什么原因
码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
AlertDialog.Builder alert_wifi = new AlertDialog.Builder(this);
alert_wifi.setMessage("This is a Wi-Fi Service. Your Device does not have an active Wi-Fi Connection. Do you Want to Activate Wi-Fi Connection")
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// Action for 'Yes' Button
dialog.dismiss();
ViewCamera.isStop = true;
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// Action for 'NO' Button
dialog.cancel(); …Run Code Online (Sandbox Code Playgroud) android ×2
java ×2
delegates ×1
dictionary ×1
exception ×1
facebook-fql ×1
file-io ×1
haskell ×1
ios ×1
jquery ×1
jquery-ui ×1
list ×1
memory-leaks ×1
monads ×1
objective-c ×1
phpunit ×1
python ×1
resources ×1
ruby ×1
string ×1
vim ×1
web-services ×1