小编aKi*_*leR的帖子

没有 csproj 的 C# 9 顶级程序?

即将推出的 C# 9 的一项功能是所谓的顶级程序。这样您就可以在没有类的情况下编写以下内容。

using System;

Console.WriteLine("Hello World!");
Run Code Online (Sandbox Code Playgroud)

并将dotnet run为您启动它。

它对我有用,但前提是我还添加了.csproj如下所示的文件

<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFramework>net5.0</TargetFramework>
    </PropertyGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)

有没有办法.csproj从图片中跳过?:) 这样就只有一个Program.cs文件,仅此而已。

c# c#-9.0

16
推荐指数
1
解决办法
880
查看次数

使用 Java 的蓝牙设备的电池电量

我正在尝试构建一个简单的 java 程序,它显示Windows中连接的蓝牙设备的电池状态。请参见下面的示例图像。

在此处输入图片说明

首先我从BlueCove开始,发现 BlueCove 只提供地址、简单名称等基本信息。经过进一步调查,发现读取特征的唯一方法是通过 BLE GATT 服务。因此开始基于在 GitHub Bluetooth-manager项目中找到的tinyb编写测试代码,结果出现异常

到目前为止,我已经尝试过这段代码

import org.sputnikdev.bluetooth.URL;
import org.sputnikdev.bluetooth.manager.CharacteristicGovernor;
import org.sputnikdev.bluetooth.manager.impl.BluetoothManagerBuilder;

import java.io.IOException;
import java.util.concurrent.ExecutionException;

public class B2 {

    public static void main(String[] args) throws IOException, ExecutionException, InterruptedException {

        new BluetoothManagerBuilder()
                .withTinyBTransport(true)
                .withBlueGigaTransport("^*.$")
                .build()
                .getCharacteristicGovernor(new URL("/XX:XX:XX:XX:XX:XX/F7:EC:62:B9:CF:1F/"
                        + "0000180f-0000-1000-8000-00805f9b34fb/00002a19-0000-1000-8000-00805f9b34fb"), true)
                .whenReady(CharacteristicGovernor::read)
                .thenAccept(data -> {
                    System.out.println("Battery level: " + data[0]);
                }).get();

    }
}
Run Code Online (Sandbox Code Playgroud)

马文

import org.sputnikdev.bluetooth.URL;
import org.sputnikdev.bluetooth.manager.CharacteristicGovernor;
import org.sputnikdev.bluetooth.manager.impl.BluetoothManagerBuilder;

import java.io.IOException;
import java.util.concurrent.ExecutionException;

public class B2 { …
Run Code Online (Sandbox Code Playgroud)

java windows bluetooth bluetooth-lowenergy bluetooth-gatt

6
推荐指数
1
解决办法
406
查看次数

java - 如何制作按字母顺序对集合进行排序的泛型函数

我想创建一个实用程序方法,它可以接受一个列表并按其字符串值对其进行排序.但我似乎无法弄清楚如何编写通用的参数.这是我到目前为止:

public class StringUtils {

    public static <T> void sortAscending(List<T> list) {
        Collections.sort(list.getClass(),
                new Comparator<T>() {
            public int compare(T f1, T f2) {
                return f1.toString().compareTo(f2.toString());
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

"Collection.sort"这一行在编译时抱怨我没有传递正确的东西.我怎样才能实现这一目标?

在此输入图像描述

java sorting generics comparator

0
推荐指数
1
解决办法
97
查看次数

Java 10'var'将在没有完全重建的情况下生成错误

请参考以下示例.

====之前====

---- A.java ---

var userAccounts = userService.getUserAccounts();
Run Code Online (Sandbox Code Playgroud)

--- B.java

class UserService {
public OldUserAccounts getUserAccounts();
}
Run Code Online (Sandbox Code Playgroud)

==== ====之后

---- A.java ---

var userAccounts = userService.getUserAccounts();
Run Code Online (Sandbox Code Playgroud)

--- B.java

class UserService {
public NewUserAccounts getUserAccounts();
}
Run Code Online (Sandbox Code Playgroud)

尽管A.java发生了变化,但B.java源文件没有变化.B.class文件的信息有'userAccounts'变量类型是'OldUserAccounts'不是吗?如果我将修改后的源文件应用于真实服务器.'var'会产生一个bug吗?

注意: 我知道这是一个不好的做法,即使没有var更改也可能是字节码不兼容的.在我的案例中,重建整个项目的想法并不好.成本太高了

任何想法或解决方法??

java rebuild var java-10

-5
推荐指数
1
解决办法
133
查看次数