小编Kev*_*vin的帖子

同时迭代Java ArrayList时会发生NoSuchElementException

我有一个类似于下面的方法:

public void addSubjectsToCategory() {
    final List<Subject> subjectsList = new ArrayList<>(getSubjectList());
    for (final Iterator<Subject> subjectIterator =
            subjectsList.iterator(); subjectIterator.hasNext();) {
         addToCategory(subjectIterator.next().getId());
    } 
}
Run Code Online (Sandbox Code Playgroud)

当它同时为同一个用户(另一个实例)运行时,有时它会抛出NoSuchElementException.根据我的理解,有时subjectIterator.next()在列表中没有元素时执行.仅在访问时会发生这种情况.方法同步会解决这个问题吗?

堆栈跟踪是:

java.util.NoSuchElementException: null
at java.util.ArrayList$Itr.next(Unknown Source)
at org.cmos.student.subject.category.CategoryManager.addSubjectsToCategory(CategoryManager.java:221)
Run Code Online (Sandbox Code Playgroud)

该堆栈跟踪失败addToCategory(subjectIterator.next().getId());.

java arraylist

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

无法向具有 TIMESTAMP 数据类型的 SQL Server 表添加新列

我正在尝试向现有 SQL Server 表中添加一个新列,数据类型为TIMESTAMP.

这是我的脚本:

ALTER TABLE OrderDetails 
    ADD ModifiedTime TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
Run Code Online (Sandbox Code Playgroud)

它不应该为空。运行此脚本会导致错误

无法在时间戳数据类型的列上创建默认值

我尝试在没有DEFAULT CURRENT_TIMESTAMP. 但后来它说

无法将值 NULL 插入到“ModifiedTime”列中

请问有什么建议吗?

sql sql-server

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

"20111122"中的日期时间格式

我有这个代码(C#.net)

  DateTime time = DateTime.Now;              
  MessageBox.Show(time.ToString());
Run Code Online (Sandbox Code Playgroud)

这显示日期为"11/22/2011 11:10:07 PM"格式;

如何使用C#.net以"20111122"格式显示日期时间.请指教 :)

c#

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

DateTime格式从dd/mm/yyyy格式到yyyy-mm-dd

如何使用C#.net将日期从dd/mm/yyyy格式转换为yyyy-mm-dd.请指教

c#

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

标签 统计

c# ×2

arraylist ×1

java ×1

sql ×1

sql-server ×1