小编Hum*_*art的帖子

Java Collections API Bug?

我偶然发现了Collections.java中Java Collections API中的一个错误.

以下是JDK源代码中的代码.您知道,JavaDoc版本标记为"1.106,04/21/06".该方法位于第638行.

public static <T extends Object & Comparable<? super T>> T max(Collection<? extends T> coll) {
    Iterator<? extends T> i = coll.iterator();
    T candidate = i.next();

    while (i.hasNext()) {
        T next = i.next();
        if (next.compareTo(candidate) > 0)
            candidate = next;
    }
    return candidate;
}
Run Code Online (Sandbox Code Playgroud)

如果您花一点时间来分析该方法,您将很快发现错误:T candidate = i.next().D'哦!在迭代器上调用i.next()而不首先检查hasNext()?那只是要求一个例外.

当然在编码过程中应该发现类似的东西?这意味着使用API​​必须检查集合是否至少包含两个元素.

java collections

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

如何以编程方式访问IPTV服务器?

我的大学目前正在进行IPTV试验.要访问该服务,系统会要求您安装VLC Media Player,并通过它运行从大学内部网下载的文件,每个文件代表一个频道.

文件格式如下:

#EXTM3U
#EXTINF:0,ITV2
udp://@238.255.0.6:2001
Run Code Online (Sandbox Code Playgroud)

我认为这是一个M3U播放列表文件.幸运的是,该文件包含托管服务的服务器的IP地址,访问它的端口以及协议,在本例中为UDP.

我的问题是,如何以编程方式访问服务?客户端是否与服务器进行了特定的握手?因为它只是通过VLC媒体播放器可以访问,所以访问数据肯定是微不足道的,因为没有使用专有协议?

我不太习惯以编程方式访问互联网; 我知道在Java Port中可以构建UDP模型.我很欣赏Java中的答案,但任何类似的语言都绰绰有余.

谢谢!

java networking udp iptv

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

根据类和元素类型选择元素

如何选择具有特定类和特定元素类型的HTML文档中的所有元素?

我正在尝试title loggedin从HTML文档中选择所有类的锚点(然后在浏览器中打开它们).这些是与班级的parragraphs title.

它们是以下DOM树中的叶子:

+ body
  + div class='content'
    + div id='siteTable' class='sitetable linklisting'
      + div class='thing id-t3_xxxx xxx xxx link'
        + div class='entry unvoted'
            + p class='title'
              + a class='title loggedin '
Run Code Online (Sandbox Code Playgroud)

其中x表示可变内容.

(我希望在原始JavaScript中执行此操作,即不在jQuery中.)

javascript dom

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

两个如何使用python水平合并几个.csv文件?

我有几个.csv文件(~10),需要将它们水平合并到一个文件中.每个文件具有相同的行数(~300)和4个标题行,这些标题行不一定相同,但不应合并(仅从第一个.csv文件中获取标题行).行中的标记以逗号分隔,中间没有空格.

作为一个python noob,我没有提出解决方案,但我确信这个问题有一个简单的解决方案.欢迎任何帮助.

python csv file

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

与轻量级购物网站中的XML相比,数据库的好处是什么?

我有一个基于JSP和XML的轻量级在线购物网站,我想知道这个系统的特殊弱点是什么,而不是PHP和MySQL?

我知道JSP可以使用Java API,但我觉得PHP与HTML有更"自然"的关系,并且还具有动态类型的优点,并且更加广泛和需求.是否有一个原因?

php xml database jsp

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

我在哪里可以找到类型列表的来源?

我在哪里可以找到Python list类型的来源?我已经快速浏览了它的SVN回购(2.7分支),但这是一个非常可怕的地方.

编辑:由于Python一段时间后从SVN迁移,为了更现代,我也将链接到它的HG repo(2.7分支).

python list

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

不同的字符串初始化会产生不同

为什么我使用以下方法,用于将字符串中的所有字符转换为大写,

while (*postcode) {
    *postcode = toupper(*postcode);

    postcode++;
}
Run Code Online (Sandbox Code Playgroud)

使用以下参数有效,

char wrong[20];
strcpy(wrong, "la1 4yt");
Run Code Online (Sandbox Code Playgroud)

但是,以下,不是,尽管它们是相同的?

char* wrong = "la1 4yt";
Run Code Online (Sandbox Code Playgroud)

我的程序崩溃试图写入非法地址(我认为是一个段错误).这不是问题malloc吗?不是无效的?它应该不是......

通过调试我发现它在尝试将第一个字符分配为大写时崩溃了.

任何帮助赞赏!

c

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

printf修改字符串

使用printf打印"\4unix\5lancs\2ac\2uk\0"我发现,而不是以形式的打印?unix?lancs?ac?uk,我得到垃圾(? ,?E¦§Qh ?).

我无法找到解释; 我使用以下方法来标记字符串:

/**
 * Encode the passed string into a string as defined in the RFC.
 */
char * encodeString(char *string) {
    char stringCopy[128];
    char encodedString[128] = "";
    char *token;

    /* We copy the passed string as strtok mutates its argument. */
    strcpy(stringCopy, string);

    /* We tokenise the string on periods. */
    token = strtok(stringCopy, ".");

    while (token != NULL) {
        char encodedToken[128] = "";

        /* Encode the token. …
Run Code Online (Sandbox Code Playgroud)

c printf

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

用于编写GUI应用程序的编程语言

除了.NET或Java,哪种语言可用于为Windows和Linux编写应用程序?

user-interface programming-languages

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