我试图使用Java从用户的输入转换十进制到二进制数.
我收到了错误.
package reversedBinary;
import java.util.Scanner;
public class ReversedBinary {
public static void main(String[] args) {
int number;
Scanner in = new Scanner(System.in);
System.out.println("Enter a positive integer");
number=in.nextInt();
if (number <0)
System.out.println("Error: Not a positive integer");
else {
System.out.print("Convert to binary is:");
System.out.print(binaryform(number));
}
}
private static Object binaryform(int number) {
int remainder;
if (number <=1) {
System.out.print(number);
}
remainder= number %2;
binaryform(number >>1);
System.out.print(remainder);
{
return null;
} } }
Run Code Online (Sandbox Code Playgroud)
如何在Java中将十进制转换为二进制?
我可以用下面这段代码来创建的替代一个新的文件a与aa使用正则表达式.
import re
with open("notes.txt") as text:
new_text = re.sub("a", "aa", text.read())
with open("notes2.txt", "w") as result:
result.write(new_text)
Run Code Online (Sandbox Code Playgroud)
我想知道我是否必须使用这一行,new_text = re.sub("a", "aa", text.read())多次但是将字符串替换为我要更改的其他字母,以便在我的文本中更改多个字母?
也就是说,所以a- > aa,b- > bb和c- > cc.
所以我必须为我要改变的所有字母写下那一行,或者有一种更简单的方法.也许要创建一个翻译的"字典".我应该把这些字母放到一个数组中吗?如果我这样做,我不确定如何打电话给他们.
所以,我有空投功能,但如果用户按下接受并且用户按空中请求拒绝,我需要发生不同的事情.
目前,无论用户是接受还是拒绝空投请求,都会发生相同的动作.
我正在使用
activityViewController.SetCompletionHandler(HandleActivityViewControllerCompletion);
Run Code Online (Sandbox Code Playgroud)
有这个签名:
private async void HandleActivityViewControllerCompletion (NSString activityType, bool completed, NSExtensionItem[] returnedItems, NSError error)
Run Code Online (Sandbox Code Playgroud)
问题是我无法使用这些参数.如果用户做出任一选择并且returnedItems为null,则Completed始终返回true.
我可以使用或做什么来检测用户是否拒绝了Airdrop请求?
这是一个Xamarin.iOS应用程序,但Swift /原生iOS的答案也很好.
类似的SO问题没有答案: UIActivityViewController Airdrop - 检查'发送'或'拒绝'时的状态
我正在尝试设置Serilog将日志写入我的db表.
以下是我尝试设置日志记录到SQL Server的细分.
1)安装Nuget包,Serilog和Serilog.Sinks.MSSqlServer
2)我建立了一个名为Logger.cs的类,它包含了Serilog的所有配置:
public static class Logger
{
private static readonly ILogger _Logger;
static Logger()
{
var connStr = "data source=DESKTOP-BLAH;Initial Catalog=DBNAME;Trusted_Connection=True;";
_Logger = new LoggerConfiguration()
.WriteTo.MSSqlServer(connStr, "ApplicationLogs",
columnOptions: GetSqlColumnOptions(), restrictedToMinimumLevel: LogEventLevel.Debug, batchPostingLimit: 1)
.CreateLogger();
Serilog.Debugging.SelfLog.Enable(msg => Debug.WriteLine(msg));
}
public static ColumnOptions GetSqlColumnOptions()
{
var colOptions = new ColumnOptions();
colOptions.Store.Remove(StandardColumn.Properties);
colOptions.Store.Remove(StandardColumn.MessageTemplate);
colOptions.Store.Remove(StandardColumn.Message);
colOptions.Store.Remove(StandardColumn.Exception);
colOptions.Store.Remove(StandardColumn.TimeStamp);
colOptions.Store.Remove(StandardColumn.Level);
colOptions.AdditionalDataColumns = new Collection<DataColumn>
{
new DataColumn{DataType = typeof(DateTime), ColumnName = "LogTimeStamp"},
new DataColumn{DataType = typeof(Int32), ColumnName = "RecordNum"},
new DataColumn{DataType = typeof(string), …Run Code Online (Sandbox Code Playgroud) 我正在尝试检查电子邮件字段和确认电子邮件字段是否相互匹配.也就是说,用户输入他们的电子邮件然后他们必须再次确认.我希望匹配/验证在模糊时发生(当用户按下回车或文本字段丢失焦点时).
这是我的ts文件:
import {Component, OnInit} from '@angular/core';
import {User} from './user.interface';
import {FormBuilder, FormGroup, ValidatorFn} from '@angular/forms';
@Component({
selector: 'my-email',
templateUrl: '/app/components/profile/email.component.html',
styleUrls:['styles.css'],
})
export class EmailComponent implements OnInit {
public user : User;
Form : FormGroup;
ngOnInit() {
// initialize model here
this.user = {
Email: '',
confirmEmail: ''
}
if(this.Form.valid) {
this.displayErrors = false;
}
}
constructor(fb: FormBuilder, private cookieService: CookieService, private router: Router) {
this.Form = fb.group({
email: [''],
confirmEmail: ['']
},
{
validator: this.matchingEmailsValidator('email', 'confirmEmail')
}); …Run Code Online (Sandbox Code Playgroud) 我有一个服务调用,当它返回404错误时,我想显示当状态为404时来自服务器的消息.所以,如果出现错误或成功,我会得到一个json的帖子给我一个状态代码和消息,指示它是否成功.
好吧,我有这个服务电话:
this._transactionService.findExistingTransaction(user, searchNumber)
.subscribe(data => {
this.transactionResponse = data;
console.log(JSON.stringify(this.transactionResponse));
this.router.navigate(['/edit-transaction-portal'], {queryParams: {bill: searchNumber}});
this.onDismiss();
}, (err) => { this.displayErrors = true;});
Run Code Online (Sandbox Code Playgroud)
出错时,它会设置bool displayErrors = true然后我可以在我的UI中显示错误消息.
在HTML代码中:
<input #inputtedNumber class="transactionInput" placeholder="{{numberPlaceholder | translate }}"/>
<div class="error-msg1" *ngIf="displayErrors" style="margin-left:90px;" name="errorMsg">
{{transactionResponse._errorDetails._message}} </div>
Run Code Online (Sandbox Code Playgroud)
这是我直接尝试访问api端点时回发的json:
{
"_transactionNumber":null,
"_order":null,
"_errorDetails":{
"_status":"404",
"_message":"Number is not available"
}
}
Run Code Online (Sandbox Code Playgroud)
我绑定到从服务调用中返回的transactionResponse对象.不幸的是,尽管我认为这应该有效,但我得到的问题是_errorDetails未定义,因此没有任何显示.
我想知道这是否适合这样的设置?如果现在,我该如何解决?
谢谢!
编辑:重复SO帖子没有答案:如何从Angular 4/2中的后端读取自定义错误消息
我有这个代码片段:
SubmitTransaction(transNumber: string, transactionRequest: ITransactionRequestObj): Observable<TransactionResponse> {
this.body = JSON.stringify(transactionRequest);
this.headers = new HttpHeaders().set('Content-Type', 'application/json');
this.headers.append('Accept', 'application/json');
this.options = new RequestOptions({headers: this.headers});
return this.http.post<TransactionResponse>(this.baseUrl + '/transactions/' + transNumber + '/new', this.body, this.options)
.pipe(catchError((e) => this.errorHandler(e)));
}
Run Code Online (Sandbox Code Playgroud)
我所做的就是将我的项目从 Angular 5 升级到 Angular 6 并更改.catch((e) => this.errorHandler(e));为 .pipe(catchError((e) => this.errorHandler(e)));. 但是,对于此特定方法,我收到以下 TypeScript 错误。
错误:
[ts]
Type 'Observable<HttpEvent<TransactionResponse>>' is not assignable to type 'Observable<TransactionResponse>'.
Type 'HttpEvent<TransactionResponse>' is not assignable to type 'TransactionResponse'.
Type 'HttpSentEvent' is not assignable to type 'TransactionResponse'. …Run Code Online (Sandbox Code Playgroud) 基本上,我要问的是,有没有办法为three.js库的JavaScript文件编写单元测试?
我有一个3D观察器,里面有摄像机,渲染器,装载机等......如何为这样的东西编写测试?那里有什么我能读到的东西吗?它甚至可能吗?
我正在尝试将我从应用程序收到的任何日志保存到我的数据库中的日志表中,到目前为止,没有任何东西得到保存.我正在使用Log4net和AdoNetAppender将日志保存到SQL Server中的表中.此代码位于我的应用程序服务器端的Web API项目中.
我按如下方式设置日志:
1)在我的Web.Config中设置XML:
<log4net>
<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
<bufferSize value="1" />
<connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=token" />
<connectionString value="data source=db;Initial Catalog=dbname;Trusted_Connection=True;" providerName="System.Data.SqlClient" />
<commandText value="dbo.procLogs_Insert" />
<commandType value="StoredProcedure" />
<parameter>
<parameterName value="@log_timestamp" />
<dbType value="DateTime" />
<layout type="log4net.Layout.RawTimeStampLayout" />
</parameter>
<parameter>
<parameterName value="@log_recordNum" />
<dbType value="Int32" />
<size value="32" />
<layout type="log4net.Layout.RawPropertyLayout" />
</parameter>
<parameter>
<parameterName value="@log_computerName" />
<dbType value="String" />
<size value="128" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%X{machine}" />
</layout>
</parameter>
<parameter>
<parameterName value="@log_processTimeStamp" />
<dbType value="DateTime" /> …Run Code Online (Sandbox Code Playgroud) 所以,我遇到了一个奇怪的问题。我想将我的 gradle 从版本升级2.14.1到5.5.1它,它不会让我。
这是我得到的错误:
Gradle sync failed: Could not find com.android.tools.build:gradle:5.5.1.
Searched in the following locations:
- https://jcenter.bintray.com/com/android/tools/build/gradle/5.5.1/gradle-5.5.1.pom
- https://jcenter.bintray.com/com/android/tools/build/gradle/5.5.1/gradle-5.5.1.jar
Required by:
project :
Consult IDE log for more details (Help | Show Log) (1 s 664 ms)
Run Code Online (Sandbox Code Playgroud)
我正在浏览一些较旧的帖子,它们都详细说明了项目和项目的要求,但奇怪的是,上面是空白的。
这是我的build.gradle文件的样子:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:5.5.1'
}
}
allprojects {
repositories {
jcenter()
}
}
Run Code Online (Sandbox Code Playgroud)
我还仔细检查了 …