标签: for-loop

Null检查增强的for循环

在Java中的for循环中防止null的最佳方法是什么?

这看起来很难看:

if (someList != null) {
    for (Object object : someList) {
        // do whatever
    }
}
Run Code Online (Sandbox Code Playgroud)

要么

if (someList == null) {
    return; // Or throw ex
}
for (Object object : someList) {
    // do whatever
}
Run Code Online (Sandbox Code Playgroud)

可能没有任何其他方式.他们应该把它放在for构造本身,如果它是null,那么不要运行循环?

java syntax loops for-loop

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

在C++ for循环之前从未见过

我正在将C++算法转换为C#.我遇到了这个for循环:

for (u = b.size(), v = b.back(); u--; v = p[v]) 
b[u] = v;
Run Code Online (Sandbox Code Playgroud)

它在C++中没有错误,但在C#中没有错误(不能将int转换为bool).我真的无法弄清楚这个循环,条件在哪里?

有人可以解释一下吗?

PS.只是为了检查,使VECTOR适应LIST b.back()对应b [b.Count-1]?

c# c++ for-loop

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

转到java中的For循环中的下一个迭代

在java中有一个令牌跳过for循环的其余部分吗?类似VB的继续 java.

java for-loop

162
推荐指数
4
解决办法
21万
查看次数

如何循环List <T>并抓取每个项目?

如何循环列表并抓取每个项目?

我希望输出看起来像这样:

Console.WriteLine("amount is {0}, and type is {1}", myMoney.amount, myMoney.type);
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

static void Main(string[] args)
{
    List<Money> myMoney = new List<Money> 
    {
        new Money{amount = 10, type = "US"},
        new Money{amount = 20, type = "US"}
    };
}

class Money
{
    public int amount { get; set; }
    public string type { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

c# collections for-loop

156
推荐指数
4
解决办法
50万
查看次数

如何找到List <>中的最后一个元素?

以下是我的代码摘录:

public class AllIntegerIDs 
{
    public AllIntegerIDs() 
    {            
        m_MessageID = 0;
        m_MessageType = 0;
        m_ClassID = 0;
        m_CategoryID = 0;
        m_MessageText = null;
    }

    ~AllIntegerIDs()
    {
    }

    public void SetIntegerValues (int messageID, int messagetype,
        int classID, int categoryID)
    {
        this.m_MessageID = messageID;
        this.m_MessageType = messagetype;
        this.m_ClassID = classID;
        this.m_CategoryID = categoryID;
    }

    public string m_MessageText;
    public int m_MessageID;
    public int m_MessageType;
    public int m_ClassID;
    public int m_CategoryID;
}
Run Code Online (Sandbox Code Playgroud)

我试图在我的main()函数代码中使用以下内容:

List<AllIntegerIDs> integerList = new List<AllIntegerIDs>();

/* some code here that is …
Run Code Online (Sandbox Code Playgroud)

c# for-loop list

154
推荐指数
7
解决办法
38万
查看次数

如何在每个循环中使用jquery继续

在我的应用程序中我使用ajax调用.我想在这个jquery循环中使用break并继续.

$('.submit').filter(':checked').each(function() {

});
Run Code Online (Sandbox Code Playgroud)

each jquery for-loop

147
推荐指数
4
解决办法
9万
查看次数

pythonic方式做N次而没有索引变量?

每天我都越来越喜欢python.

今天,我写了一些代码,如:

for i in xrange(N):
    do_something()
Run Code Online (Sandbox Code Playgroud)

我不得不做N次.但每次都不依赖于i(索引变量)的值.我意识到我正在创建一个我从未使用过的变量(i),并且我认为"在没有这个无用的索引变量的情况下,确实存在更多的pythonic方式."

所以......问题是:你知道如何以更多(pythonic)美丽的方式完成这个简单的任务吗?

python for-loop coding-style

144
推荐指数
7
解决办法
9万
查看次数

for循环中的Python循环计数器

在我下面的示例代码中,是否真的需要counter = 0,还是有更好的,更多Python的方式来访问循环计数器?我看到了几个与循环计数器相关的PEP,但是它们被推迟或被拒绝(PEP 212PEP 281).

这是我的问题的简化示例.在我的实际应用程序中,这是通过图形完成的,整个菜单必须在每一帧重新绘制.但这表明它以简单的文本方式易于重现.

也许我还应该补充一点,我正在使用Python 2.5,尽管如果有特定于2.6或更高版本的方式我仍然感兴趣.

# Draw all the options, but highlight the selected index
def draw_menu(options, selected_index):
    counter = 0
    for option in options:
        if counter == selected_index:
            print " [*] %s" % option
        else:
            print " [ ] %s" % option
        counter += 1


options = ['Option 0', 'Option 1', 'Option 2', 'Option 3']

draw_menu(option, 2) # Draw menu with "Option2" selected
Run Code Online (Sandbox Code Playgroud)

运行时,输出:

 [ ] Option 0
 [ ] Option 1 …
Run Code Online (Sandbox Code Playgroud)

python loops for-loop

138
推荐指数
2
解决办法
28万
查看次数

在golang中迭代时更改值

我想我有这些类型:

type Attribute struct {
    Key, Val string
}
type Node struct {
    Attr []Attribute
}
Run Code Online (Sandbox Code Playgroud)

并且我想迭代我的节点的属性来改变它们.

我本以为能够做到:

for _, attr := range n.Attr {
    if attr.Key == "href" {
        attr.Val = "something"
    }
}
Run Code Online (Sandbox Code Playgroud)

但由于attr不是指针,这不起作用,我必须这样做:

for i, attr := range n.Attr {
    if attr.Key == "href" {
        n.Attr[i].Val = "something"
    }
}
Run Code Online (Sandbox Code Playgroud)

有更简单或更快的方式吗?有可能直接从指针中获取指针range吗?

显然,我不想仅仅为迭代更改结构,更详细的解决方案不是解决方案.

arrays for-loop go

137
推荐指数
4
解决办法
6万
查看次数

在java中增强for循环的最后一次迭代

有没有办法确定循环是否最后一次迭代.我的代码看起来像这样:

int[] array = {1, 2, 3...};
StringBuilder builder = new StringBuilder();

for(int i : array)
{
    builder.append("" + i);
    if(!lastiteration)
        builder.append(",");
}
Run Code Online (Sandbox Code Playgroud)

现在问题是我不想在最后一次迭代中附加逗号.现在有一种方法可以确定它是最后一次迭代还是我坚持使用for循环或使用外部计数器来跟踪.

java foreach for-loop conditional-execution

134
推荐指数
9
解决办法
7万
查看次数