在以下代码中:
static void findSubsets (ArrayList<Integer> numbers, int amount, int index)
{
ArrayList <Integer> numbersCopy = new ArrayList<Integer>(numbers.size());
Collections.copy(numbersCopy, numbers);
}
Run Code Online (Sandbox Code Playgroud)
我收到错误:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Source does not fit in dest
at java.util.Collections.copy(Collections.java:548)
at backtracking2.Main.findSubsets(Main.java:61)
Run Code Online (Sandbox Code Playgroud)
为什么?
哪一个在Object类型的Array和Object类型的ArrayList之间的性能更好?
假设我们有一个Animal对象数组:Animal animal[] 和一个arraylist:ArrayList list<Animal>
现在我在做什么 animal[10] , list.get(10)
哪一个应该更快,为什么?
如何从IntelliJ for Android PRoject创建一个新的Activity,这会自动生成xml文件和.Class

我正在考虑构建一个云基同步解决方案(类似Dropbox):
强大的架构会是什么样子?
您需要哪些技术来支持不同的平台,如Windows,Mac,Linux和移动设备?
你会使用什么样的高效同步算法?
我知道一个天真的架构/解决方案是:
对云存储进行网络呼叫并获取同步文件夹树结构(仅元数据信息).
在客户端上有一个文件系统监视器来构建本地同步文件夹树结构(我猜你会使用像lsyncd这样的文件系统监视器吗?)
从先前的同步中检索同步文件夹结构.现在,您在客户端上有3个文件夹树结构.使用这3棵树可以确定需要在本地文件夹上执行的操作以及需要在服务器上的远程文件夹上执行的操作.例如,使用某种特定于应用程序的预定规则来添加,删除,编辑,解决冲突等.
这种架构可能就足够了,但魔鬼就是细节.如果同步文件夹树非常大(非常宽且非常深),该怎么办?显然,需要一种有效的确定差异的算法.如果网络连接断开并且您没有正确获取或发送整个树,该怎么办?还只发送文件差异以减少网络负载等.
我知道这些是我设计的东西,但我的问题是这个架构是否足够,我是否应该把时间花在细节上?Dropbox是如何设计的,他们使用哪些技术和算法来使大文件夹结构和数据大小同步如此高效?在设计这样的东西时,我可以咨询一下资源/书籍吗?
提前致谢.
在我的应用程序中,我连接到H2数据库,我最近正在研究如何关闭此数据库.
在我设置的连接字符串中DEFRAG_ALWAYS=true,根据H2 doc
每次关闭数据库时,都会对其进行完全碎片整理(SHUTDOWN DEFRAG).
现在我假设当JVM关闭时,关闭钩子将关闭数据库并对其进行碎片整理(就像执行一样SHUTDOWN DEFRAG).
但是,如果我SHUTDOWN COMPACT在退出应用程序之前执行,同时DEFRAG_ALWAYS=true应用了连接字符串,将使用哪个关闭过程?
我在做了大量的研究之后问了这个问题,并且在研究之后在我的代码中实现了这个问题,但我最终得到了FileNotFoundException.我在这里做的是我想要避免在我的java代码中使用硬编码所以创建一个名为的属性文件作为Constants.properties并在我的java代码中调用它.但它说它找不到文件.我的属性文件位于项目的src文件夹中.以下是代码段.有什么建议?
属性文件:
executable.run = C:\\server\\lrd.exe
incoming.file = C:\\file\\test.ic
executable.params1 = -z
executable.params2 = -a[+]
log.file = C:\\TESTFile\\test.txt
Run Code Online (Sandbox Code Playgroud)
Java代码:这是具有属性文件详细信息的类文件.
public class PropInfo {
static private PropInfo _instance = null;
public String executable = null;
public String filein = null;
public String params1 = null;
public String params2 = null;
public String log = null;
protected PropInfo(){
try{
InputStream file = new FileInputStream(new File("Constants.properties"));
Properties props = new Properties();
props.load(file);
executable = props.getProperty("executable.run");
filein = props.getProperty("incomin.file");
params1 = props.getProperty("executable.params1");
params2 = props.getProperty("executable.params2"); …Run Code Online (Sandbox Code Playgroud) 请考虑下表
创建途径:
CREATE TABLE WORD_TEST(WORD NVARCHAR(100));
INSERT INTO WORD_TEST(WORD) VALUES('these'),('are'),('some'),('test'),('words'),('including'),('puþpies'),('with'),('parents');
Run Code Online (Sandbox Code Playgroud)
请注意单词puþpies中的Thorn(þ)字符.
现在,如果我想做一些像找到所有具有此角色的行,我会尝试类似的东西
SELECT * FROM WORD_TEST WHERE WORD LIKE '%þ%';
Run Code Online (Sandbox Code Playgroud)
这给出了结果
但问题是它也匹配单词中的任何'th'.我也尝试了以下变化,产生相同的结果.
SELECT * FROM WORD_TEST WHERE WORD LIKE N'%þ%';
SELECT * FROM WORD_TEST WHERE WORD LIKE '%' + NCHAR(254) + '%';
Run Code Online (Sandbox Code Playgroud)
如何仅根据包含该字符的单词进行选择?
我正在创建一个 Microsoft 流程,以在团队内的 Flow 机器人发布的自适应卡片中提及用户。
这是我的 JSON 的简化版本来执行此操作
{
"type": "AdaptiveCard",
"body": [
{
"type": "Container",
"items": [
{
"type": "TextBlock",
"size": "Medium",
"weight": "Bolder",
"color": "Attention",
"text": "Hey!"
},
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"items": [
{
"type": "TextBlock",
"text": "<at>steve@example.com</at>",
}
],
"width": "stretch"
}
]
}
]
},
],
"actions": [
{
"type": "Action.OpenUrl",
"title": "Teams Message",
"url": "-teamsUrl-"
}
],
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.0"
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,这只是显示为 <at>steve@example.com</at>
如果我使用与团队频道消息相同的语法,那么用户将被提及。
是否可以通过这种方式在自适应卡片中提及用户?
我想在 JAVA (java swing) 中播放视频文件。
我使用过 JMF(java 媒体框架)。但它仅支持 .mpg 格式。
我想播放 .mp4 格式的视频文件。
这该怎么做?
我可以使用此代码播放 mpg 视频
mediaPlayer1.setMediaLocation("file:///C:/mpgvdo/Best_Song2.mpg");
mediaPlayer1.start();
Run Code Online (Sandbox Code Playgroud)
我想知道如何使用 vlcj 播放 mp4 文件。我需要完整的步骤。从 vlcj 安装开始。
我在 netbeans 库中包含了 vlcj jar 文件,也添加到了调色板中,但我没有找到 vlc 播放器。
请帮我。
我有一个像这样的ArrayList:
ArrayList<ArrayList<Double>> someArray = new ArrayList<ArrayList<Double>>();
Run Code Online (Sandbox Code Playgroud)
它的值如下:
[1,3,2,1,3,4,5,5],[7,2,1,3,4,5,4,2,4,3],....
Run Code Online (Sandbox Code Playgroud)
我希望输出看起来像这样:
1 7 . . .
3 2
2 1
1 3
.
.
.
Run Code Online (Sandbox Code Playgroud)
即,ArrayList中的每个列表都应显示为一列.我尝试了各种方法,但代码在行中显示它们..
for(int i=0;i<someArray.size();i++){
System.out.println(someArray.get(i));
}
Run Code Online (Sandbox Code Playgroud)
看起来很简单但无法弄明白: - !
java ×6
arraylist ×3
collections ×2
android ×1
arrays ×1
cloud ×1
file-io ×1
h2 ×1
netbeans-7 ×1
performance ×1
runtime.exec ×1
select ×1
sql ×1
sql-server ×1
video ×1
video-player ×1
vlcj ×1