您好我有一个不寻常的日期格式,我想解析为DateTime对象
string date ="20101121"; // 2010-11-21
string time ="13:11:41: //HH:mm:ss
Run Code Online (Sandbox Code Playgroud)
我想用,DateTime.Tryparse()但我似乎无法开始这个.
谢谢你的帮助.
这个班轮......
Console.println(io.Source.fromFile("names.txt").getLines.mkString.split(",").map{x:String => x.slice(1, x.length -1)}.sortBy { x => x}.zipWithIndex.map{t =>{ (t._2 +1)*(t._1.map{_.toChar - "A"(0).toChar + 1}.sum)}}.sum);
Run Code Online (Sandbox Code Playgroud)
...是我对Project Euler问题22的解决方案.它似乎工作,它写在(我的尝试)功能风格.
这个例子有点极端,但我的问题更为笼统 - 您更喜欢编写/格式化/评论功能样式代码?功能方法似乎鼓励了一系列方法调用,我发现这些方法调用不可读,而且放置注释也无处可寻.
此外,当我编写过程代码时,我发现我编写了一些小方法,每个方法都有一个目的和有意义的名称.当我编写功能代码时,我似乎正在养成一种习惯,这种习惯产生的线条与上面的线条有点差别,其中(对我而言)意义难以破译 - 而且个别计算也难以在其他地方重复使用.我在网上看到的很多功能代码示例同样简洁(对我而言)模糊不清.
我该怎么办?为当前上下文中有意义的名称编写计算的每个部分的小函数?(即使它们只是地图的包装,说?)
对于我给出的例子,有什么更好的方法来编写它并呈现它?
(就像所有风格的问题一样,这个问题是主观的.但是没有理由它应该引起争议!)
抱歉,这是一个我从未意识到的概念,我从未使用过我的项目.我绝对需要学习和使用它.
所以我读了许多关于界面和事件处理的文章,但它并没有留在我的脑海里.
刚开始一个简单的例子:
public class Main implements ActionListener{
JButton but=new JButton("BUTTON");
public Main() {
but.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
// DO SOMETHINGS WHEN THE BUTTON IS CLICKED
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码绝对容易.我实现了ActionListener接口,所以我需要编写自己的方法代码(actionPerformed).
我不明白的是:
1 - 谁实施了这个addActionListener方法?它不是JButton类的方法.谁提供这种方法?
2 - addActionListeneractionPerformed方法之间的桥梁是什么?第一个应该提供Event e给第二个......并且两个都必须在某个地方实现......
对不起这个问题.我试着学习这个(通过阅读互联网上的许多文章),但我无法理解这是如何工作的!
干杯谢谢大家:)
我希望能够使用Guice注入通用接口的通用实现.
public interface Repository<T> {
void save(T item);
T get(int id);
}
public MyRepository<T> implements Repository<T> {
@Override
public void save(T item) {
// do saving
return item;
}
@Override
public T get(int id) {
// get item and return
}
}
Run Code Online (Sandbox Code Playgroud)
在C#中使用Castle.Windsor,我可以做到:
Component.For(typeof(Repository<>)).ImplementedBy(typeof(MyRepository<>))
Run Code Online (Sandbox Code Playgroud)
但我不认为Guice中存在等价物.我知道我可以TypeLiteral在Guice 中使用来注册个人实现,但是有没有办法像Windsor那样一次注册它们?
编辑:
这是一个用法示例:
Injector injector = Guice.createInjector(new MyModule());
Repository<Class1> repo1 = injector.getInstance(new Key<Repository<Class1>>() {});
Repository<Class2> repo2 = injector.getInstance(new Key<Repository<Class2>>() {});
Run Code Online (Sandbox Code Playgroud)
虽然更可能的用法是注入另一个类:
public class ClassThatUsesRepository {
private Repository<Class1> repository;
@Inject
public ClassThatUsesRepository(Repository<Class1> …Run Code Online (Sandbox Code Playgroud) 我需要检测Android设备是否已连接到Internet.
本NetworkInfo类提供了一个非静态方法isAvailable()听起来很完美.
问题是:
NetworkInfo ni = new NetworkInfo();
if (!ni.isAvailable()) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
抛出此错误:
The constructor NetworkInfo is not visible.
Run Code Online (Sandbox Code Playgroud)
安全的赌注是有另一个类返回一个NetworkInfo对象.但我不知道哪个.
我想在我正在做的应用中使用谷歌的拼写纠正/建议.我用谷歌搜索了它,但我发现的只是Google取消的SOAP API和新推荐的XML Web Search API的示例.
我只是希望能够发送搜索查询并返回建议的更正.
我现在可以使用哪种API?你能举例说明它的用法吗?周围有C#Wrapper吗?
谢谢!
编辑:
Bing和雅虎拼写API的问题在于它们似乎是在检查字典,因此一些品牌/产品名称无法识别,谷歌似乎是基于通常的拼写错误和他们最终访问的页面,所以它可以建议拼写检查对于最常见的事情,即:
如果你输入
"你好,"
它会说
"你的意思是你好世界吗?"
即使它拼写正确
我正在使用DataGridView单元格的值填充ComboBox.现在,我不想重复ComboBox中已有的值.
所以,有例如:
我想删除多次出现的所有值.
这是我的代码:
private void btnFilter_Click(object sender, EventArgs e)
{
ArrayList SellerNameList = new ArrayList();
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
SellerNameList.Add(dataGridView1.Rows[i].Cells["cSellerName"].Value);
}
comboBox1.DataSource = SellerNameList;
}
Run Code Online (Sandbox Code Playgroud)
对不起,我的英语不好.
我正在尝试在我们的超级pom中定义一个属性,它将被所有子项目用作生成的工件的目标.
为此,我考虑使用project/build/finalName但这似乎不起作用,即使对于简单的poms:
命令
mvn archetype:create \
-DarchetypeGroupId=org.apache.maven.archetypes \
-DgroupId=com.mycompany.app \
-DartifactId=my-app
Run Code Online (Sandbox Code Playgroud)
POM
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>my-app</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<finalName>${project.name}-testing</finalName>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)
$ mvn install
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building my-app
[INFO] task-segment: [install]
[INFO] ------------------------------------------------------------------------
[INFO] [resources:resources {execution: default-resources}]
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /tmp/mvn_test/my-app/src/main/resources
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Nothing …Run Code Online (Sandbox Code Playgroud) 我是Android上的软件开发新手.
我想创建一个像SetCPU这样可以在Android中操纵CPU频率的应用程序.
但我找不到一些相关的API或材料.
我想真诚地了解以下两件事.
我一直在Clojure上玩玩具数据库,想要实现一个B + Tree.当我开始考虑它时,我意识到可能没有办法像Clojure中的其他节点那样使用指针/引用.对于像BST或许多其他树结构这样的东西并不重要,因为你需要的只是存储一个Node的孩子.但是我在B +树中做什么,我需要能够引用Node的兄弟?
在寻找解决方案时,我在Google网上论坛中发布了一篇关于如何在Clojure中实现双向链接列表的帖子,因为在Clojure中还有其他方法可以做.
我怎么办B +树呢?