我正在尝试将名为City的类的对象添加到.这是该类的代码ArrayList
public class City {
public static int x;
public static int y;
City(){
Random rand = new Random();
this.x = rand.nextInt(100)+1;
this.y = rand.nextInt(100)+1;
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的Main类的代码
public static int N = 10;
public static ArrayList<City> cities = new ArrayList<City>();
public static void main(String[] args) {
for (int i=1; i<N; i++){
cities.add(new City());
}
for (City c : cities)
System.out.print("("+c.x+", "+c.y+")");
}
}
Run Code Online (Sandbox Code Playgroud)
结果println总是相同的,似乎数组列表只存储其所有元素中添加的最后一个对象.
例如,我运行程序时得到的结果是:
(52, 93)(52, 93)(52, …Run Code Online (Sandbox Code Playgroud) 我见过我的老年人的各种代码,他们在很多地方使用过它.它有什么影响?为什么他们不能包括anything != null.对于下面的事情也是如此
"true".equals(x).
为什么会这样?
我对Quartz有点新意.有没有办法更新已提交的Quartz作业的作业执行间隔?此间隔是否立即更新?重新安排后,你是否必须再次开始这项工作?
我找到了以下链接,但我不知道哪些库是代码,因为我的石英罐不包含链接中使用的一些类.此外,triggerKey方法来自哪里?这是某种静态导入吗?
http://quartz-scheduler.org/documentation/quartz-2.x/cookbook/UpdateTrigger
我希望在我的一个JUnit测试用例中将作业执行间隔更新为一个非常大的数字,因为我不希望该作业干扰被测试类的状态.测试用例完成后,我想将作业执行间隔重置为将在生产中使用的实际值
在Java中的单个catch块中捕获多种类型的异常时,如何为异常提供final修饰符
我有两个辅助方法:
public String load(URL url) {...}
public String load(File file) {...}
Run Code Online (Sandbox Code Playgroud)
我想有一个方法,根据它接收的对象类型调用适当的帮助器方法:
public void operate(Object object) {...}
Run Code Online (Sandbox Code Playgroud)
我知道有一种令人费解的方式,它是:
public void operate(Object object) {
String data = null;
if (object.getClass().equals(File.class)) {
data = load((File) object);
}
if (object.getClass().equals(URL.class)) {
data = load((URL) object);
}
// operate on the data....
}
Run Code Online (Sandbox Code Playgroud)
然而,这似乎并不优雅,如果有更好的方式,我很好奇.
我遇到以下问题:
我正在尝试创建bean如下:
@Bean
public abc createABC() {
return new ABC(--, def(),--);
}
Run Code Online (Sandbox Code Playgroud)
`
@Bean
public DEF def() {
return new DEF(--, createABC(),--
}
Run Code Online (Sandbox Code Playgroud)
有任何建议可以解决这个问题,而不必考虑基于setter的注入.这是不良设计的指示吗?在我的情况下,这种依赖是必须的.请提供您的观点
我对hashsets并不是很好,我想知道我是否能够使用.addAll方法检索hashets删除的重复项.所以在我的代码中,它要求用户输入最多20的值,如果它是-1,则中断.然后删除重复项并显示完成的列表.但现在我想显示已删除重复项的列表列表.例如:2 = 3个重复5 = 5个重复.这是我的代码:
import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.Scanner;
import java.util.Set;
public class Question {
public static void main(String[] args) {
ArrayList<Integer> entries = new ArrayList<Integer>();
Scanner input = new Scanner(System.in);
int counter = 0;
int sentinel = -1;
while (entries.size() <= 20) {
System.out.println("Please enter some numbers into the entries list");
entries.add(input.nextInt());
if (entries.get(counter) == sentinel) {
entries.remove(counter);
break;
}
System.out.println("You've added: " + entries.get(counter) + ". So far your list is as shows: " + entries); …Run Code Online (Sandbox Code Playgroud) 我想使用Apache DBUtils库从数据库填充POJO(State.java)。但是,由于Bean属性的名称与DB列名称不完全匹配,因此某些属性未填写。
现在,我通过谷歌搜索对此进行了一些研究,发现可以通过以下方法实现:
谁能提供一个很好的例子说明如何使用BeanProcessor将列名映射到属性?调整示例为我提供的效果会更好。
数据库表
CREATE TABLE public.states (
state_id INTEGER DEFAULT nextval('states_seq'::regclass) NOT NULL,
state_cd VARCHAR(2) NOT NULL,
name VARCHAR(100) NOT NULL,
tax_pct NUMERIC(10,2) DEFAULT 0.00 NOT NULL,
active CHAR(1) DEFAULT 'Y'::bpchar NOT NULL,
)
Run Code Online (Sandbox Code Playgroud)
State.java
public class State implements Serializable {
private int stateId;
private String stateCode;
private String name;
private BigDecimal taxPct = new BigDecimal(0);
private Date expiryDate;
private String createdBy;
private Date createdOn;
private String active;
//getters and setters here …Run Code Online (Sandbox Code Playgroud) 序列化类时是否必须实现 Serializable 类。我尝试将对象数据放入带有和不带有可序列化实现的文件中,发现绝对没有区别。
import java.io.*;
import java.net.*;
public class SerializableTest {
int a= 10;
String test="Serialize test";
public static void main(String [] args){
SerializableTest test =new SerializableTest();
test.save();
}
public void save(){
try{
FileOutputStream fs = new FileOutputStream("save.res");
ObjectOutputStream os = new ObjectOutputStream(fs);
os.writeObject(test);
os.close();
}
catch (Exception ex ){
System.out.println("Error in opening or saving file");
}
System.out.println("Complete");
}
}
Run Code Online (Sandbox Code Playgroud)
import java.io.*;
import java.net.*;
public class SerializableTest **implements Serializable**{
int a= 10;
String test="Serialize test";
public static void …Run Code Online (Sandbox Code Playgroud) 我已经阅读了几乎所有帖子中的volatile(即使它不是静态的)变量在线程之间共享.当一个线程更新变量时,第二个线程获取更新的值.但是当我在本地机器上运行代码时,运行java 7.它没有给出预期的结果
代码 -
public class StatciVolatile3 {
public static void main(String args[]) {
new ExampleThread2("Thread 1 ").start();
new ExampleThread2("Thread 2 ").start();
}
}
class ExampleThread2 extends Thread {
private volatile int testValue = 1;
public ExampleThread2(String str) {
super(str);
}
public void run() {
for (int i = 0; i < 3; i++) {
try {
System.out.println(getName() + " : " + i);
if (getName().compareTo("Thread 1 ") == 0) {
testValue++;
System.out.println("Test Value T1: " + testValue);
}
if …Run Code Online (Sandbox Code Playgroud)