程序设计

专业和发烧友程序员的问答

26
Java 8流反向顺序
一般问题:反向流的正确方法是什么?假设我们不知道流包含什么类型的元素,反转任何流的通用方法是什么? 具体问题: IntStream提供了生成特定范围内的整数的范围方法IntStream.range(-range, 0),现在我想将其范围从0切换为负数将不起作用,也无法使用Integer::compare List<Integer> list = Arrays.asList(1,2,3,4); list.stream().sorted(Integer::compare).forEach(System.out::println); 与IntStream我会得到这个编译器错误 错误:(191,0)ajc:sorted()类型中的方法IntStream不适用于参数(Integer::compare) 我在这里想念什么?


13
有哪些工具可以用C进行功能编程?
最近我一直在思考如何使用C(而不是 C ++)进行函数式编程。显然,C是一种过程语言,并不真正支持本机功能编程。 是否有任何编译器/语言扩展在语言中添加了一些功能性的编程构造?GCC提供嵌套功能作为语言扩展;嵌套函数可以从父堆栈框架访问变量,但这距离成熟的闭包还有很长的路要走。 例如,我认为在C语言中可能真正有用的一件事是,在需要使用函数指针的任何地方,您都可以传递lambda表达式,从而创建一个衰减为函数指针的闭包。C ++ 0x将包含lambda表达式(我认为它很棒);但是,我正在寻找适用于直C的工具。 为了明确起见,我并不是要解决C语言中更适合函数编程的特定问题。我只是想知道如果要使用哪些工具。

12
适用于4.0的Rails Observer替代品
随着Observers正式从Rails 4.0中删除,我很好奇其他开发人员正在使用什么。(除了使用提取的宝石。)虽然观察者当然被滥用并且有时很容易变得笨拙,但除了清除缓存之外,还有许多用例,它们是有益的。 以需要跟踪模型更改的应用程序为例。观察者可以轻松地监视模型A上的更改,并使用模型B将这些更改记录在数据库中。如果要监视多个模型之间的更改,则可以由一个观察员来处理。 在Rails 4中,我很好奇其他开发人员正在使用哪些策略代替Observers重新创建该功能。 就我个人而言,我倾向于一种“胖控制器”实现,其中在每个模型控制器的create / update / delete方法中跟踪这些更改。尽管它稍微使每个控制器的行为slightly肿,但由于所有代码都在一个地方,因此确实有助于提高可读性和理解力。不利的一面是,现在有一些非常相似的代码散布在多个控制器中。将代码提取到帮助器方法中是一种选择,但是您仍然需要在各处随处调用这些方法。不是世界末日,也不是完全符合“瘦控制器”的精神。 ActiveRecord回调是另一种可能的选择,尽管我个人并不喜欢,因为我认为它倾向于将两种不同的模型紧密地结合在一起。 因此,在Rails 4的“无观察员”世界中,如果必须在创建/更新/销毁另一条记录之后创建新记录,那么您将使用哪种设计模式?胖控制器,ActiveRecord回调或其他功能? 谢谢。


28
ORA-12505,TNS:侦听器当前不知道连接描述符中给出的SID
我已经在Windows 7 64位操作系统中安装了Oracle 11g Express Edition Release 2,并尝试执行JDBC程序,然后出现以下错误: java.sql.SQLException: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:412) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:503) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.jlcindia.jdbc.JDBCUtil.geOracleConnection(JDBCUtil.java:28) at Lab3O.main(Lab3O.java:15) Caused …
153 oracle  jdbc 


6
“拒绝Git推送非快速转发更新”是什么意思?
我正在使用Git管理两台计算机和我的开发。我正在尝试将更改提交到GitHub,但出现错误。 无法将一些参照推送到<repo>。为防止您丢失历史记录,非快进更新被拒绝。合并远程更改,然后再次推送。 是什么原因造成的,我该如何解决? 编辑: 拉回购返回以下内容: *分支母版->母版(非快进)已更新 推仍然给我上述错误。

16
如何在Python中禁用和重新启用控制台日志记录?
我正在使用Python的日志记录模块,并且想在一段时间内禁用控制台日志记录,但是它不起作用。 #!/usr/bin/python import logging logger = logging.getLogger() # this gets the root logger # ... here I add my own handlers #logger.removeHandler(sys.stdout) #logger.removeHandler(sys.stderr) print logger.handlers # this will print [<logging.StreamHandler instance at ...>] # but I may have other handlers there that I want to keep logger.debug("bla bla") 上面的代码显示了bla blaon …

9
引导警报自动关闭
我需要在单击“添加到愿望清单”按钮时拨打警报,并且应该在2秒钟内消失警报。这是我尝试过的方法,但是警报一出现便立即消失。不知道错误在哪里。有人可以帮我吗? JS脚本 $(document).ready (function(){ $("#success-alert").hide(); $("#myWish").click(function showAlert() { $("#success-alert").alert(); window.setTimeout(function () { $("#success-alert").alert('close'); }, 2000); }); }); HTML代码: <div class="product-options"> <a id="myWish" href="" class="btn btn-mini">Add to Wishlist </a> <a href="#" class="btn btn-mini"> Purchase </a> </div> 警报框: <div class="alert alert-success" id="success-alert"> <button type="button" class="close" data-dismiss="alert">x</button> <strong>Success!</strong> Product have added to your …



11
如何在PowerShell中加载程序集?
以下PowerShell代码 #Get a server object which corresponds to the default instance $srv = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Server ... rest of the script ... 给出以下错误信息: New-Object : Cannot find type [Microsoft.SqlServer.Management.SMO.Server]: make sure the assembly containing this type is loaded. At C:\Users\sortelyn\ ... \tools\sql_express_backup\backup.ps1:6 char:8 + $srv = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Server + …

5
是否需要为favicon.ico添加链接标签?
是否有任何现代浏览器无法自动检测到favicon.ico?是否有任何理由要为favicon.ico添加链接标签? <link rel="shortcut icon" href="/favicon.ico"> 我的猜测是,如果您决定使用GIF或PNG,仅需要将其包含在HTML文档中...
153 html  favicon  html-head 

13
num ++是否可以对“ int num”是原子的?
通常,for int num,num++(或++num)作为读取-修改-写入操作不是原子的。但是我经常看到编译器(例如GCC)为此生成以下代码(请尝试在此处): 由于对应的第5行num++是一条指令,在这种情况下,我们可以得出结论num++ 是原子的吗? 如果是这样,是否意味着这样生成的代码num++可以在并发(多线程)场景中使用,而不会造成数据争用的危险(即,例如,我们不需要这样做,std::atomic<int>并且会产生相关的成本,因为它反正还是原子的? 更新 注意,这个问题不是增量是否是原子的(不是,那过去是,现在是问题的开头)。这是在特定情况下是否可以使用,即在某些情况下是否可以利用单指令性质来避免lock前缀的开销。并且,正如公认的答案在有关单处理器机器的部分中提到的那样,以及该答案,其注释中的对话和其他解释都可以(尽管不是使用C或C ++)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.