问题列表 - 第43798页

使用Scala中for循环的值填充List

我对scala很新,我无法解决这个(非常)微不足道的问题.

我知道我可以用预定义的值实例化一个List,如下所示:

val myList = List(1,2)
Run Code Online (Sandbox Code Playgroud)

我想用1到100000的所有整数填充List.我的目标不是为List使用var并使用循环来填充列表.

有没有"功能"方式这样做?

scala scala-2.8 scala-collections

2
推荐指数
1
解决办法
1719
查看次数

绘制声音的音高(频率)

我想将声音的音高绘制成图形.

目前我可以绘制幅度.下图是由返回的数据创建的getUnscaledAmplitude():

替代文字

AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new BufferedInputStream(new FileInputStream(file)));
byte[] bytes = new byte[(int) (audioInputStream.getFrameLength()) * (audioInputStream.getFormat().getFrameSize())];
audioInputStream.read(bytes);

// Get amplitude values for each audio channel in an array.
graphData = type.getUnscaledAmplitude(bytes, 1);


public int[][] getUnscaledAmplitude(byte[] eightBitByteArray, int nbChannels)
{
    int[][] toReturn = new int[nbChannels][eightBitByteArray.length / (2 * nbChannels)];
    int index = 0;

    for (int audioByte = 0; audioByte < eightBitByteArray.length;)
    {
        for (int channel = 0; channel < nbChannels; channel++)
        {
            // Do the byte to sample conversion. …
Run Code Online (Sandbox Code Playgroud)

java audio fft frequency pitch

34
推荐指数
2
解决办法
3万
查看次数

TCPDF输出而不保存文件

如何使用TCPDF在浏览器中输出pdf文件而不像ezpdf那样保存?

php pdf tcpdf

26
推荐指数
3
解决办法
9万
查看次数

VIM for Windows - 我输入什么来保存和退出文件?

使用WinXP我意外地输入git commit -a而不是git commit -am "My commit message",现在我正在查看我的CMD提示符,其中填写了我的提交消息的文件版本("请输入您的提交消息...").我已将消息添加到顶部,但现在我无法弄清楚如何保存和离开.我试着按CTRL+ W+ Q,但它没有做什么,只是添加^光标所在的位置.

esc先尝试过,然后是CTRL+ W+ Q,但它说No write since last change (add ! to override).

git vim windows-xp git-commit

258
推荐指数
6
解决办法
15万
查看次数

"java.net.BindException:已经在使用的地址",当尝试快速创建Socket并进行负载测试时进行销毁

我正在尝试通过打开大量与服务器的套接字连接来加载测试Java服务器,验证,关闭连接,然后重复.我的应用程序运行了一段时间,但最终我得到:

java.net.BindException:地址已在使用中:connect

根据我读过的文档,其原因是在调用close()之后的一段时间内,关闭的套接字仍占用分配给它们的本地地址.这取决于操作系统,但可以是几分钟.我试着调用setReuseAddress(true)socket,希望它的地址在close()被调用后可以立即重用.不幸的是,情况似乎并非如此.

我的套接字创建代码是:

Socket socket = new Socket();
socket.setReuseAddress(true);
socket.connect(new InetSocketAddress(m_host, m_port));
Run Code Online (Sandbox Code Playgroud)

但我仍然得到这个错误:

java.net.BindException:已经在使用的地址:一段时间后连接.

有没有其他方法可以完成我想要做的事情?我想举个例子:打开100个插座,关闭它们,打开200个插座,全部关闭,打开300个等,最多可达200​​0个左右的插座.

任何帮助将不胜感激!

java sockets networking tcp

27
推荐指数
1
解决办法
6万
查看次数

Git:手动重命名文件,Git很困惑

我正在使用Git并手动重命名我已添加到存储库的文件.现在,我添加了"new"文件,我将其重命名为存储库,但Git抱怨"旧"文件已被删除.那么我怎么能让Git忘记旧文件呢?更好的是,我如何告诉Git"新"文件确实是"新"文件,以便我可以保持更改历史记录不变?

git version-control

51
推荐指数
2
解决办法
3万
查看次数

JavaBeans和内省 - 搞砸了布尔属性和索引属性?

我的一位前同事半小时前开始讨论JavaBeans,以及为什么他们在JSF中没有按照他想要的方式工作.特殊情况是关于布尔属性.

1.对于名为isUrlEclipse 的布尔属性,生成此属性

private boolean isUrl;
public boolean isUrl() {..}
public boolean setUrl(boolean url) {..}
Run Code Online (Sandbox Code Playgroud)

但这在JSF中不起作用.他通过添加public boolean getIsUrl()实现了它的实现可能是错误的,所以让我们通过使用内省API确保谁是正确的:

BeanInfo info = Introspector.getBeanInfo(ClassTest.class);
for (PropertyDescriptor pd : info.getPropertyDescriptors()) {
      System.out.println(pd.getName() + ": " + pd.getReadMethod() + 
       " : " + pd.getWriteMethod());
}
Run Code Online (Sandbox Code Playgroud)

对于上面的代码,这会打印两种方法 - 即Eclipse是正确的,JSF是错误的.但这听起来很可疑,因为规范没有提到关于双"是"的任何内容.

但是在查看规范时,我看到了一些我从未使用过的东西 - 所谓的索引属性.你可以拥有private String[] bar然后public String getBar(int idx).所以:

2.我尝试了Introspector,并没有找到bar的读取方法.上述代码的结果是:bar: null : null.所以我开始思考 - 现在内窥镜没有遵循规范.也许它在之前的案例中没有遵循它,最终,JSF是对的.实际上,索引属性可以使得给定属性有两种读取方法.PropertyDescriptor对于内省API 的类,这是不可能的.

这导致了我们 - 我们有一个可能破坏的API,不符合规范.这导致规范的其他实现(JSF显然使用自定义的).这导致了进一步的误解和混淆. …

java introspection javabeans

8
推荐指数
1
解决办法
2320
查看次数

Ruby on Rails中的Button_to路线不好

我正在尝试使用button_torails helper.我写了以下代码:

<%= button_to 'Edit Item', edit_item_path(@item), :class => 'mark-button' %>

并收到以下错误消息

No route matches "/items/1/edit"

但是当我刷新页面时,它会进行相应的操作.我得到的页面的URL localhost:3000/items/1/edit是正确的URL.如果我将button_to命令切换到link_to加载的页面没有错误.意思是这段代码:

<%= link_to 'Edit Item', edit_item_path(@item), :class => 'mark-button' %>

加载很好.也许有一些button_to我不知道的特征,但我迷失了.

ruby ruby-on-rails button link-to

6
推荐指数
1
解决办法
5649
查看次数

DDD:何处放置持久性逻辑,以及何时使用ORM映射

我们正在仔细研究我们的(Java)Web应用程序模式.在过去,我们遭受了过度贫血的对象模型以及控制器,服务和DAO之间的过度程序分离,其中简单的价值对象(基本上只是数据包)在它们之间传播.我们使用声明性(XML)管理的ORM(Hibernate)来实现持久性.所有实体管理都在DAO中进行.

在尝试转向更丰富的域模型时,我们发现自己在如何最好地设计持久层方面遇到了困难.我花了很多时间阅读和思考领域驱动设计模式.但是,我想要一些建议.

首先,我更自信的事情:

  • 我们前面有"瘦"控制器,只处理HTTP和HTML - 处理表单,验证,UI逻辑.

  • 我们将有一层无状态业务逻辑服务,它们实现常见的算法或逻辑,不知道UI,但非常了解(并委托)域模型.

  • 我们将拥有一个更丰富的域模型,其中包含该域模型中对象固有的状态,关系和逻辑.

问题出在持久性上.以前,我们的服务将通过Spring注入(通过Spring),并使用find()和save()等DAO方法来执行持久性.但是,更丰富的域模型似乎暗示对象应该知道如何保存和删除自己,也许更高级别的服务应该知道如何定位(查询)域对象.

在这里,出现了一些问题和不确定性:

  • 我们是否要将DAO注入域对象,以便它们可以在save()方法中执行"this.someDao.save(this)"?这有点尴尬,因为域对象不是单例,所以我们需要工厂或DAO的后期构建设置.从数据库加载实体时,这会变得混乱.我知道Spring AOP可以用于此,但我无法使用它(使用Play!框架,另一行实验),它看起来非常混乱和神奇.

  • 我们是否将DAO(存储库?)完全分开,与无状态业务逻辑服务相提并论?这可能有一定道理,但这意味着如果"保存"或"删除"是域对象的固有操作,则域对象无法表达这些操作.

  • 我们是否完全免除了DAO并使用JPA让实体自行管理.

下面是下一个细微之处:使用JPA映射实体非常方便.表演!框架为我们提供了一个很好的实体基类,具有save()和delete()等操作.但是,这意味着我们的域模型实体与数据库结构紧密相关,并且我们使用大量持久性逻辑传递对象,可能一直到视图层.如果不出意外,这将使域模型在其他环境中的可重用性降低.

如果我们想避免这种情况,那么我们需要某种映射DAO - 使用简单的JDBC(或至少是Spring的JdbcTemplate),或使用数据库实体和"业务"实体的并行层次结构,DAO永远复制来自一个层次结构到另一个

这里适当的设计选择是什么?

马丁

oop dao design-patterns domain-driven-design

13
推荐指数
1
解决办法
4838
查看次数

使用Facebook C#SDK获取个人资料图片

我想得到个人资料图片.我可以使用Facebook SDK,以及如何做到这一点?

当我使用Api.get选项时,我得到一个jsonreader异常.

facebook

2
推荐指数
1
解决办法
5664
查看次数