相关疑难解决方法(0)

一种反转java String.split()效果的方法?

我正在寻找一种方法将字符串数组合成一个分隔的字符串.与split()相反.

在我尝试编写自己的论坛之前想要问论坛(因为JDK拥有一切)

java string split join

125
推荐指数
7
解决办法
12万
查看次数

在为每个使用时识别最后一个循环

我想在对象上执行'foreach'时,对最后一个循环迭代做一些不同的事情.我正在使用Ruby,但C#,Java等也是如此.

  list = ['A','B','C']
  list.each{|i|
    puts "Looping: "+i # if not last loop iteration
    puts "Last one: "+i # if last loop iteration
  }
Run Code Online (Sandbox Code Playgroud)

所需的输出相当于:

  Looping: 'A'
  Looping: 'B'
  Last one: 'C'
Run Code Online (Sandbox Code Playgroud)

显而易见的解决方法是使用代码将代码迁移到for循环'for i in 1..list.length',但for each解决方案感觉更优雅.在循环期间编写特殊情况的最优雅方法是什么?可以用foreach完成吗?

c# ruby java foreach loops

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

Java:如果使用for-each循环集合,则替代iterator.hasNext()

我正在尝试使用for-each语句替换基于迭代器的Java列表循环,但代码在某些时候使用iterator.hasNext()它来检查它是否到达列表中的最后一个元素.

for-each替代品有类似的东西吗?

for (Object current : objectList) {
   if (last-element) 
      do-something-special
}
Run Code Online (Sandbox Code Playgroud)

java foreach loops

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

编写循环的简洁方法,该循环具有集合中第一个项目的特殊逻辑

通常我必须编写一个循环,它必须特殊情况下集合中的第一个项目,代码似乎永远不应该是清晰的.

如果没有重新设计C#语言,那么编写这些循环的最佳方法是什么?

// this is more code to read then I would like for such a common concept
// and it is to easy to forget to update "firstItem"
foreach (x in yyy)
{
  if (firstItem)
  {
     firstItem = false;
     // other code when first item
  }
  // normal processing code
}

// this code is even harder to understand
if (yyy.Length > 0)
{
   //Process first item;
   for (int i = 1; i < yyy.Length; i++)
   {  
      // process …
Run Code Online (Sandbox Code Playgroud)

c# collections

12
推荐指数
3
解决办法
2515
查看次数

标签 统计

java ×3

c# ×2

foreach ×2

loops ×2

collections ×1

join ×1

ruby ×1

split ×1

string ×1