HashSet基于HashMap.
如果我们看一下HashSet<E>实现,一切都在管理之下HashMap<E,Object>.
<E>被用作关键词HashMap.
我们知道这HashMap不是线程安全的.这就是我们ConcurrentHashMap在Java中的原因.
基于此,我很困惑,为什么我们没有一个应该基于的ConcurrentHashSet ConcurrentHashMap?
还有什么我想念的吗?我需要Set在多线程环境中使用.
另外,如果我想创建我自己的ConcurrentHashSet,我可以通过替换HashMapto来实现它,ConcurrentHashMap并将其余部分保留原样?
我只是想知道是否需要TimeSpan,java.util以便我可以定义这两次之间有多少小时,分钟和秒.
由此TimeSpan我们可以有两次之间的时间间隔.喜欢
TimeSpan getTimeSpan( Date before, Date after ){...}
Run Code Online (Sandbox Code Playgroud)
要么
long timeSpan = System.currentTimeMillis();
// ... long job
timeSpan = System.currentTimeMillis() - timeSpan;
TimeSpan ts = new TimeSpan(timeSpan);
Run Code Online (Sandbox Code Playgroud)
有了它,TimeSpan我们可以使用它SimpleDateFormat.
SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
format.format( timsSpan );
Run Code Online (Sandbox Code Playgroud)
我不确定这是否已经在Java中实现,但我还没有发现.
我知道在Java中,我们可以通过创建一个类的实例new,clone(),Reflection和serializing and de-serializing.
我创建了一个实现Singleton的简单类.
我需要一直停止创建我的类的实例.
public class Singleton implements Serializable{
private static final long serialVersionUID = 3119105548371608200L;
private static final Singleton singleton = new Singleton();
private Singleton() { }
public static Singleton getInstance(){
return singleton;
}
@Override
protected Object clone() throws CloneNotSupportedException {
throw new CloneNotSupportedException("Cloning of this class is not allowed");
}
protected Object readResolve() {
return singleton;
}
//-----> This is my implementation to stop it but Its not working. …Run Code Online (Sandbox Code Playgroud) 我正在尝试将数据写入二进制格式的文件以进行压缩.数据完全由浮点组成,因此我决定将数据量化为0到65535之间的整数,这样数据就可以写成两位无符号整数,最终节省空间.但是,我需要将量化数据输出到二进制文件而不是人类可读的Ascii.
目前这就是我正在做的事情
@param output将包含已经量化的数据的文件作为.txt文件中的字符串
public void generateBinaryRioFile(String materialLibrary,
String outputFile, String group, String mtlAux) {
try {
// Create file
FileWriter fileStream = new FileWriter(outputFile);
try {
BufferedReader br = new BufferedReader(new FileReader(new File(
"idx.txt")));
while ((line = br.readLine()) != null) {
writer.write(line + "\n");
}
try {
br.close();
} catch (FileNotFoundException e) {
e.getMessage();
} catch (IOException e) {
e.printStackTrace();
} BufferedWriter writer = new BufferedWriter(fileStream);
Run Code Online (Sandbox Code Playgroud)
但是,它将文件写为人类可读的字符串.我需要将它写成二进制数据.如何在Java中实现这一目标?
var date1 = new Date();
date1.setFullYear(2011, 6, 1);
// 2011-07-01, ok
console.log(date1);
// set date2 the same date as date1
var date2 = date1;
// ...
// now I'm gonna set a new date for date2
date2.setFullYear(2011, 9, 8);
// 2011-10-08, ok
console.log(date2);
// 2011-10-08, wrong, expecting 2011-07-01
// I didn't assign a new date to date1
// WHY is date1 changed?
console.log(date1);
Run Code Online (Sandbox Code Playgroud) 我的服务器中有一个奇怪的例外.
相同的应用程序(java,swing)在几台服务器上运行.
每台服务器都运行双监视器.相同的jre版本(jre 6版本24)所有这些都在相当的CPU /内存消耗.
只有其中一个 - 当我将我的应用程序从一个监视器拖到另一个监视器时,它会抛出java.lang.IllegalStateException异常.我在下面附上了完整的例外情况.有谁有想法吗 ?
谢谢.
而现在,例外:
java.lang.IllegalStateException: Buffers have not been created
at sun.awt.windows.WComponentPeer.getBackBuffer(Unknown Source)
at java.awt.Component$FlipBufferStrategy.getBackBuffer(Unknown Source)
at java.awt.Component$FlipBufferStrategy.updateInternalBuffers(Unknown Source)
at java.awt.Component$FlipBufferStrategy.revalidate(Unknown Source)
at java.awt.Component$FlipBufferStrategy.revalidate(Unknown Source)
at java.awt.Component$FlipBufferStrategy.getDrawGraphics(Unknown Source)
at javax.swing.BufferStrategyPaintManager.prepare(Unknown Source)
at javax.swing.BufferStrategyPaintManager.paint(Unknown Source)
at javax.swing.RepaintManager.paint(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at java.awt.GraphicsCallback$PaintCallback.run(Unknown Source)
at sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source)
at sun.awt.SunGraphicsCallback.runComponents(Unknown Source)
at java.awt.Container.paint(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.seqPaintDirtyRegions(Unknown Source)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at …Run Code Online (Sandbox Code Playgroud) 我希望在我的项目中像浏览器一样实现后退和前进等功能,就像我们拥有屏幕的网页一样.我试过的是最初的设定currentscreenindex=-1
当第一个屏幕的数据到来时执行此功能
In screen data arrive function (){
this.currentscreenindex++;
this.screenvisited[this.currentscreenindex]=data;
}
Run Code Online (Sandbox Code Playgroud)
这是我的后退功能我尝试过:
back(){
currentscreenindex--;
var screen=screenvisited[currentscreenindex];
// will go to this screen
}
Run Code Online (Sandbox Code Playgroud)
但我的问题在于:
currentscreenindex screen data in screenvisted array
When 1st screen arrived 0 Data of 1st screen
When 2st screen arrived 1 Data of 2st screen
When 3st screen arrived 2 Data of 3st screen
When 4st screen arrived 3 Data of 4st screen
When 5st screen arrived 4 Data of 5st screen
when user click back …Run Code Online (Sandbox Code Playgroud) 我正在使用Struts2.并且在测试String为null或为空时遇到问题.String处于循环中.
到目前为止我所做的是
在Action类我有一个List<User>.User有id和name田地,并有吸气剂和制定者......
在JSP我喜欢
<s:iterator value="userList" var="user" status="userStatus">
<s:if test"%{user.name != null && user.name != ''}">
${user.name}
<!-- Do some thing... -->
</s:if>
</s:iterator>
Run Code Online (Sandbox Code Playgroud)
问题是它不工作:(,我看不到名字,如果我删除<s:if>块,它们是可见的.
我正在运行一个查询,其中包含在子句中多次使用的相同子查询WHERE.
我有拖字段的表client_id,buyer_id.
子查询返回要从结果中排除的日期列表.
这就是我使用它的方式.
SELECT
id, client_id, buyer_id
FROM relation
WHERE
client_id NOT IN (SELECT <some_id> FROM <some_table> WHERE ...)
AND buyer_id NOT IN (SELECT <some_ids> FROM <some_table> WHERE ...)
Run Code Online (Sandbox Code Playgroud)
这是按预期的方式工作但令我困扰的是,有两个相同的子查询.我想知道是否有一种方法可以使用它一次并将结果用于两个地方.
谢谢.
我想为我的项目启用单元测试.我创建了如下结构.
目录结构
.
??? pom.xml
??? src
? ??? main
? ? ??? java
? ? ??? resources
? ? ??? META-INF
? ? ? ??? beans.xml <-- Works fine in live
? ? ? ??? persistence.xml <-- Works fine in live
? ??? test
? ??? java
? ? ??? com
? ? ? ??? test
? ? ? ??? model
? ? ? ??? TestEntityManagerUtil.java
? ? ? ??? TestHibernate.java
? ??? resources
? ??? META-INF
? ? …Run Code Online (Sandbox Code Playgroud) java ×6
javascript ×2
algorithm ×1
binary-data ×1
collections ×1
concurrency ×1
date ×1
exception ×1
hashmap ×1
hashset ×1
hibernate ×1
java-ee ×1
java-ee-6 ×1
jpa-2.0 ×1
jsp ×1
mysql ×1
reflection ×1
singleton ×1
sql ×1
string ×1
struts2 ×1
subquery ×1
timespan ×1
variables ×1