我正在研究 Kotlin 与 java 的互操作。
我找不到这样的问题的答案。我有一个来自 kotlin 的对象:
object Test {
fun main(args: Array<String>) {
}
}
Run Code Online (Sandbox Code Playgroud)
反编译后的形式如下所示:
public final class Test {
public static final Test INSTANCE;
public final void main(@NotNull String[] args) {
Intrinsics.checkParameterIsNotNull(args, "args");
}
static {
Test var0 = new Test();
INSTANCE = var0;
}
}
Run Code Online (Sandbox Code Playgroud)
问题是:为什么当我尝试创建对象时,我看到 Test 具有私有访问权限的错误?反编译代码中没有私有构造函数......
我正在尝试更新简单表中的主键。
当我像这样执行查询时:
alter table test update id = 2 where id = 1;
Run Code Online (Sandbox Code Playgroud)
我看到消息:
Cannot UPDATE key column `id`
Run Code Online (Sandbox Code Playgroud)
有什么解决方法吗?
我正在阅读文档,只是对下一步感到好奇:
PREWHERE 就像 WHERE 的优化形式,它在过滤之前仅读取必要的数据,然后使用此信息为用户读取所有实际数据。
问题是为什么存在两个关键字?只要有可能就使用 WHERE 而不是 PREWHERE 似乎是不合理的。在某些情况下,使用 WHERE 是更好的选择吗?
我正在使用这样的资源:https : //coinmarketcap-nexuist.rhcloud.com/api/all 它以 json 形式返回加密货币列表和当前价格。
Spring Boot 在我的堆栈中,因此对于以前的所有情况,它都能很好地将 json 转换为我的域对象。但是现在我遇到了问题,因为其中一个货币名称以数字开头。如您所知,不可能使用数字作为第一个可变字母。
我用谷歌搜索找到了一些解决方法,但没有任何成功。有人知道如何处理吗?
谢谢!
这是java TreeMap实现的标题(1.8_071):
public class TreeMap<K,V>
extends AbstractMap<K,V>
implements NavigableMap<K,V>, Cloneable, java.io.Serializable
Run Code Online (Sandbox Code Playgroud)
为什么没有限制,像这样:
public class TreeMap<K extends Comparable<?>,V>
extends AbstractMap<K,V>
implements NavigableMap<K,V>, Cloneable, java.io.Serializable
Run Code Online (Sandbox Code Playgroud) 我正在为 ruby date api 苦苦挣扎。我需要将时间戳数字转换为格式化日期。但是当我使用:
Time.at(1517486994710).to_datetime
Run Code Online (Sandbox Code Playgroud)
或者
DateTime.strptime("1517486994710",'%s')
Run Code Online (Sandbox Code Playgroud)
(1517486994710 是今天的 unix 时间戳),我看到 50057 年作为输出。我在做什么错?
我无法在网络上找到答案。
有人知道如何在netty服务器中获取动态分配的端口信息吗?
服务器以这种方式引导:
override fun startSocket() {
try {
val serverBootstrap = ServerBootstrap()
serverBootstrap.group(group)
serverBootstrap.channel(NioServerSocketChannel::class.java)
if(peerInfo is DynamicPortPeerInfo) {
serverBootstrap.localAddress(InetSocketAddress(peerInfo.host, 0))
} else {
serverBootstrap.localAddress(InetSocketAddress(peerInfo.host, peerInfo.port))
}
serverBootstrap.childHandler(object : ChannelInitializer<SocketChannel>() {
override fun initChannel(socketChannel: SocketChannel) {
socketChannel.pipeline()
.addLast(NettyIO.framePrepender)
.addLast(LengthFieldBasedFrameDecoder(MAX_PAYLOAD_SIZE, 0, packetSizeLength, 0, packetSizeLength))
.addLast(ServerHandler())
}
})
val channelFuture = serverBootstrap.bind().sync()
channelFuture.channel().closeFuture().sync()
} catch (e: Exception) {
logger.error(e.toString())
}
}
Run Code Online (Sandbox Code Playgroud)