接口(在名为"Interfaces"的程序集中.在项目中: - 接口)
namespace Interfaces
{
public interface IDoSomeWork1
{
string DoSomeWork1();
}
}
namespace Interfaces
{
public interface IDoSomeWork2
{
string DoSomeWork2();
}
}
Run Code Online (Sandbox Code Playgroud)
依赖关系(在名为"实体"的程序集中.在项目中: - 实体)
namespace Entities
{
public class ClassB : IDoSomeWork1
{
public string DoSomeWork1()
{
return this.ToString();
}
}
}
namespace Entities
{
public class ClassC : IDoSomeWork2
{
public string DoSomeWork2()
{
return this.ToString();
}
}
}
Run Code Online (Sandbox Code Playgroud)
类(在项目中: - UsingUnity)
public class ClassA
{
[Dependency]
public IDoSomeWork1 DoSomeWork1 { get; set; }
[Dependency] …Run Code Online (Sandbox Code Playgroud) uint8_t类型的sscanf占位符是什么?我试过%u,但OS X下的gcc不喜欢它.
以前我使用点击检测窗口技术来检测UIWebView中的点击,但现在我尝试使用手势识别器.以下代码位于视图控制器的viewDidLoad方法中,该方法具有单个UIWebView.这段代码编译得很好,但是从不调用handleTap方法.这似乎应该很简单.
// Configure a gesture recognizer to detect taps in the web view
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap)];
[self.myWebView addGestureRecognizer:singleTap];
[singleTap release];
[super viewDidLoad];
Run Code Online (Sandbox Code Playgroud) 我最近在代码中看到了上面的运算符,我用Google搜索但没有发现任何内容.代码如下.请说明这个运算符实际上做了什么?
#include<stdio.h>
int main()
{
unsigned long int i=0;
char ch;
char name1[20],name2[20];
FILE *fp,*ft;
printf("ENTER THE SOURCE FILE:");
gets(name1);
printf("ENTER THE DESTINATION FILE:");
gets(name2);
fp=fopen(name1,"r");
ft=fopen(name2,"w");
if(fp==NULL)
{
printf("CAN,T OPEN THE FILE");
}
while(!feof(fp))
{
ch=getc(fp);
ch=~((ch^i));/*<--Here*/
i+=2;
if(i==100000)
{
i=0;
}
putc(ch,ft);
}
fclose(fp);
fclose(ft);
return 0;
}
Run Code Online (Sandbox Code Playgroud) C如何表示负整数?
它是通过二进制补码表示还是使用MSB(最重要的位)?
-1十六进制是ffffffff.
所以请为我澄清一下.
我有三个输入数据文件.每个都使用不同的分隔符来包含其中的数据.数据文件一个如下所示:
apples | bananas | oranges | grapes
数据文件二看起来像这样:
quarter, dime, nickel, penny
数据文件三看起来像这样:
horse cow pig chicken goat
(列数的变化也是有意的)
我的想法是计算非字母字符的数量,并假设最高计数是分隔符.但是,具有非空格分隔符的文件在分隔符之前和之后也有空格,因此空格会在所有三个文件上获胜.这是我的代码:
def count_chars(s):
valid_seps=[' ','|',',',';','\t']
cnt = {}
for c in s:
if c in valid_seps: cnt[c] = cnt.get(c,0) + 1
return cnt
infile = 'pipe.txt' #or 'comma.txt' or 'space.txt'
records = open(infile,'r').read()
print count_chars(records)Run Code Online (Sandbox Code Playgroud)
它将打印一个字典,其中包含所有可接受字符的计数.在每种情况下,空间总是获胜,所以我不能依靠它来告诉我分隔符是什么.
但我想不出更好的方法来做到这一点.
有什么建议?
以下程序从时间服务器获取时间有什么问题.
public class SocketTest
{
public static void main(String[] args)
{
Socket s = new Socket(“time-A.timefreq.bldrdoc.gov”, 13);
BufferedReader in = new BufferedReader(
new InputStreamReader(s.getInputStream()));
String line;
do
{ line = in.readLine(); //read line of text from socket
if (line != null) System.out.println(line);
}
while(line != null);
}
}
Run Code Online (Sandbox Code Playgroud) 最近我遇到了Null Object设计模式,我的同事说它可以用来取消整个代码中遇到的空指针检查.
例如,假设DAO类返回有关Customer的信息(在名为CustomerVO的值对象中).我的主要课程应该提取firstName和emailId并向客户发送电子邮件.
...
CustomerVO custVO = CustomerDAO.getCustomer(customerID);
if(custVO != null) { // imp, otherwise we may get null ptr exception in next line
sendEmail(custVO.getFirstName(), custVO.getEmailID());
}
...
Run Code Online (Sandbox Code Playgroud)
这是一个非常简单的示例,但是这样的空检查可以根据值对象的复杂性快速传播到整个代码中.
我有两个与null检查的问题, - 它们倾向于使代码变得丑陋且难以阅读 - 经验较少的开发人员在实际上应该抛出异常时进行不必要的空检查.例如,在上面的代码中,最好从getCustomer()本身抛出异常,因为如果它无法找到给定CustID的客户信息,则表明CustID无效.
好吧,回到null对象模式,我们可以使用'null'CustomerVO对象隐藏空检查吗?
CustomerVO {
String firstName = "";
String emailID = "";
}
Run Code Online (Sandbox Code Playgroud)
这不是有意义的.你怎么看?
为了最大限度地减少应用中的空值检查,您遵循了哪些内容.
我在OsX上使用emacs.app 23.1.1并试图在shell中使用git .
当我使用命令时git log-p,我得到了
WARNING: terminal is not fully functional
- (press RETURN)
Run Code Online (Sandbox Code Playgroud)
我也得到类似的东西git commit,我被迫使用git commit -m.
我emacs.app该怎么配置才能在shell中运行?
package com.commonsware.android.threads;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
public class HandlerDemo extends Activity {
Thread mBackground;
ProgressBar bar;
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
bar.incrementProgressBy(5);
}
};
boolean isRunning = false;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
bar = (ProgressBar) findViewById(R.id.progress);
}
public void onStart() {
super.onStart();
bar.setProgress(0);
mBackground = new Thread(new Runnable() {
public void run() {
try { …Run Code Online (Sandbox Code Playgroud)