问题列表 - 第40113页

Canonical toList在java中?

在任何标准库中都有这样的东西(例如apache-commons,guava)?

public static <T> List<T> toList(Iterable<T> iterable) {
    if (iterable instanceof List)
        return (List<T>)iterable;

    if (iterable instanceof Collection)
        return new ArrayList<T>((Collection<T>)iterable);

    List<T> result = new ArrayList<T>();
    for (T item : iterable)
        result.add(item);

    return result;
}
Run Code Online (Sandbox Code Playgroud)

java collections

3
推荐指数
1
解决办法
170
查看次数

Git SVN和合并分支

我正在开发一个带有两个分支的svn项目,让我们调用它们

trunk
branches/foo
Run Code Online (Sandbox Code Playgroud)

我的想法是克隆整个svn存储库(告诉git哪个文件夹是主干,标签和分支),在git中进行合并然后将我的合并复制到svn工作副本并从svn提交更改.

在这个工作流程中,我是否可以使用gits合并功能,还是仅适用于使用git创建的分支?

svn git git-svn

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

过滤mysql中的别名

为什么以下查询无效?Mysql抱怨z - 我不能在WHERE子句中使用别名吗?

SELECT x + y AS z, t.*  FROM t
WHERE 
x = 1 and
z = 2
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

Error Code : 1054
Unknown column 'z' in 'where clause'
Run Code Online (Sandbox Code Playgroud)

mysql sql mysql-error-1054

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

纹理映射C++ OpenGL

我已经读过这个,包括Nehe和这里的解决方案,但我找不到具体的答案.

我正在尝试加载一张名为stars.jpg的照片.我想把它作为场景的背景,通过使用紫外坐标映射它,做到这一点

glBegin(GL_QUADS);
glTexCoord2f(0,0);
glVertex2f(0,0);
Run Code Online (Sandbox Code Playgroud)

但是我对如何加载实际纹理非常困惑,所有的调用

glActiveTexture();
glEnable(GL_TEXTURE_2d);
glBindTexture(GL_TEXTURE);
Run Code Online (Sandbox Code Playgroud)

他们所做的只是让我感到困惑,所有这些是什么意思/做什么,以及我想以什么顺序把它们放进去,以便让stars.jpg成为我的背景?

c++ opengl texture-mapping

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

在TextView Android中对齐文本

你如何让textview被证明是合理的?有可能得到解决方案吗?我搜索过大多数论坛,但我没有弥补.请帮帮我.

android textview

8
推荐指数
2
解决办法
4万
查看次数

为什么Java枚举文字不能具有泛型类型参数?

Java枚举很棒.仿制药也是如此.当然,由于类型擦除,我们都知道后者的局限性.但有一点我不明白,为什么我不能创建这样的枚举:

public enum MyEnum<T> {
    LITERAL1<String>,
    LITERAL2<Integer>,
    LITERAL3<Object>;
}
Run Code Online (Sandbox Code Playgroud)

这个泛型类型参数<T>反过来可以在各个地方使用.想象一下方法的泛型类型参数:

public <T> T getValue(MyEnum<T> param);
Run Code Online (Sandbox Code Playgroud)

甚至在枚举类中:

public T convert(Object o);
Run Code Online (Sandbox Code Playgroud)

更具体的例子#1

由于上面的例子对某些人来说可能看起来过于抽象,所以这里有一个更真实的例子,说明我为什么要这样做.在这个例子中我想使用

  • 枚举,因为那时我可以枚举一组有限的属性键
  • 泛型,因为那时我可以使用方法级类型安全来存储属性
public interface MyProperties {
     public <T> void put(MyEnum<T> key, T value);
     public <T> T get(MyEnum<T> key);
}
Run Code Online (Sandbox Code Playgroud)

更具体的例子#2

我有一个数据类型的枚举:

public interface DataType<T> {}

public enum SQLDataType<T> implements DataType<T> {
    TINYINT<Byte>,
    SMALLINT<Short>,
    INT<Integer>,
    BIGINT<Long>,
    CLOB<String>,
    VARCHAR<String>,
    ...
}
Run Code Online (Sandbox Code Playgroud)

每个枚举文字显然都有基于泛型类型的附加属性<T>,同时又是枚举(不可变,单例,可枚举等).

题:

没有人想到这个吗?这是与编译器相关的限制吗?考虑到事实,关键字" 枚举 "是作为语法糖实现的,表示生成的代码到JVM,我不明白这个限制.

谁能向我解释一下?在你回答之前,考虑一下:

  • 我知道泛型类型被删除了:-)
  • 我知道有使用Class对象的变通方法.他们是变通办法.
  • 在适用的情况下,通用类型会导致编译器生成的类型转换(例如,在调用convert()方法时
  • 泛型类型<T>将在枚举上.因此它受每个枚举文字的约束.因此编译器会知道,在编写类似的东西时要应用哪种类型String string = LITERAL1.convert(myObject); Integer …

java generics enums

139
推荐指数
4
解决办法
2万
查看次数

Linux:上传未完成的文件 - 带文件大小检查(scp/rsync)

我通常最终会遇到以下情况:例如,我有一个来自相机的650 MB MPEG-2 .avi视频文件.然后,我使用ffmpeg2theora将其转换为Theora .ogv视频文件,比如说大小为150 MB.最后,我想将此.ogv文件上传到ssh服务器.

比方说,ffmpeg2theora我的电脑上的编码过程大约需要15分钟.另一方面,上传速度约为60 KB/s,大约需要45分钟(150MB .ogv).所以:如果我先编码,并等待编码过程完成 - 然后上传,则需要大约

15 min + 45 min = 1 hr
Run Code Online (Sandbox Code Playgroud)

完成操作.

所以,我认为如果我能以某种方式开始上传,与编码操作并行,那会更好; 然后,原则上-作为上传过程较慢(在传输的字节/秒计),比编码一个(在生成的字节/秒计) -上载过程将总是编码一个"后面线索",所以整个操作(enc + upl)将在45分钟内完成(也就是说,只需上传过程的时间+/-几分钟,具体取决于线路上的实际上传速度情况).

我的第一个想法是管道输出ffmpeg2theoratee(以便保留.ogv的本地副本),然后,将输出进一步管道输入ssh- 如下所示:

./ffmpeg2theora-0.27.linux32.bin -v 8 -a 3 -o /dev/stdout MVI.AVI | tee MVI.ogv | ssh user@ssh.server.com "cat > ~/myvids/MVI.ogv"
Run Code Online (Sandbox Code Playgroud)

虽然这个命令确实具有功能 - 人们可以很容易地在终端的运行日志中看到ffmpeg2theora,在这种情况下,ffmpeg2theora计算预测的完成时间为1小时; 也就是说,对于enc + upl的较小完成时间似乎没有任何好处.(虽然这可能是由于网络拥塞,而且我当时的网络速度降低了 - 在我看来,它ffmpeg2theora …

linux upload rsync scp filesize

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

如何在没有过时的Thread.Suspend的情况下暂停阻塞线程?

我有一个在等待一个线程TcpListener.AcceptTcpClient(),该,我想在次暂停.

我已经读过Monitor.Wait(...),但我只有使用互斥锁的经验,如果线程等待阻塞方法,它会变得有趣.

现在Thread.Suspend(...)已经过时了,我应该如何暂停线程?

c# multithreading suspend

5
推荐指数
1
解决办法
503
查看次数

jQuery Droppable错误

这是我的代码。

$("#selected").droppable({
drop: function() {
    total = total + 1;
        alert('total : ' + total);
    }
});
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

$(“#selected”)。droppable不是函数。

解决该问题的方法是什么?

javascript jquery jquery-ui

4
推荐指数
1
解决办法
6182
查看次数

正则表达式xx天,xx个月或xx年

我需要一个接受以下输入的regualr表达式

1天

4天

15天

1个月

12个月

1年

5年

数字可以有任何长度.有任何想法吗?

php regex validation

0
推荐指数
1
解决办法
282
查看次数