草庐IT

java - 根据点偏移计算方向

对于我的基于图block的游戏,我需要根据给定的点偏移(两点之间的差异)计算方向。例如,假设我站在(10,4)点,我想移动到(8,6)点。我移动的方向是西北。计算这个的最佳方法是什么?这是我在Java中的基本实现。publicintdirection(intx,inty){if(x>0){if(y>0){return0;//NE}elseif(y0){return3;//NW}elseif(y0){return6;//N}elseif(y当然可以优化或缩短它。有什么帮助吗?谢谢。 最佳答案 我认为最容易理解的方法是制作一个静态数组,

java - Kafka 0.11 中 sendOffsetsToTransaction 的含义

新的Kafka版本(0.11)支持exactly-once语义。https://cwiki.apache.org/confluence/display/KAFKA/KIP-98+-+Exactly+Once+Delivery+and+Transactional+Messaging我在Java中使用kafka事务代码设置了一个生产者,就像这样。producer.initTransactions();try{producer.beginTransaction();for(ProducerRecordrecord:payload){producer.send(record);}Mapgrou

java - 将数据字节写入java中偏移量的文件

我希望以不同的偏移量将数据写入文件。例如,在第0个位置、第(size/2)个位置、第(size/4)个位置等。size表示要创建的文件的文件大小。如果不创建不同的文件部分并加入它们,这可能吗? 最佳答案 您可以使用RandomAccessFile写入文件中您喜欢的任何位置-只需使用seek到达正确的位置,然后开始写作。但是,这不会在那些地方插入字节-它只会覆盖它们(或者如果你写的超过了末尾,则在末尾添加数据当然是当前文件长度)。目前尚不清楚这是否是您想要的。 关于java-将数据字节写入

java - 如何在 Java 7 中将具有 UTC 偏移量的日期时间值转换为 GMT

我有一个日期时间值2016-12-21T07:48:36,偏移量为UTC+14。如何将日期时间转换为等效的标准GMT时间。我尝试使用sampleDateFormat.parse()方法。但是,我无法获得UTC偏移量的TimeZone对象。sampleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC+14:00"))请帮助我将UTC日期时间转换为Java7中的标准GMT时间。 最佳答案 我假设您将原始日期作为字符串。执行以下操作:创建一个SimpleDateFormat并将时区设置为“G

Java 7 watchservice 获取文件更改偏移量

我一直在尝试使用Java7WatchService来监视文件的更改。这是我编写的一些代码:WatchServicewatcher=FileSystems.getDefault().newWatchService();Pathpath=Paths.get("c:\\testing");path.register(watcher,StandardWatchEventKinds.ENTRY_MODIFY);while(true){WatchKeykey=watcher.take();for(WatchEventevent:key.pollEvents()){System.out.printl

java - jackson :解析自定义偏移日期时间

我有一个具有时间戳属性的模型:classModel{@JsonProperty("timestamp")privateOffsetDateTimetimestamp;}时间戳格式如下:2017-09-1713:45:42.710576+02OffsetDateTime无法解析:com.fasterxml.jackson.databind.exc.InvalidFormatException:Cannotdeserializevalueoftypejava.time.OffsetDateTimefromString"2017-09-1713:45:42.710576+02":Text'2

java - 无法解析 DateTime - 由于时区偏移转换(欧洲/柏林)导致的非法时刻

为什么我无法解析以下日期?DateTime.parse("2015-03-2902:35:00",DateTimeFormat.forPattern("yyyy-MM-ddHH:mm:ss"));结果:org.joda.time.IllegalInstantException:Cannotparse"2015-03-2902:35:00":Illegalinstantduetotimezoneoffsettransition(Europe/Berlin)atorg.joda.time.format.DateTimeParserBucket.computeMillis(DateTimeP

java - 应用偏移量的 ZonedDateTime 到 UTC?

我正在使用Java8这就是我的ZonedDateTime的样子2013-07-10T02:52:49+12:00我得到这个值作为z1.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME)其中z1是一个ZonedDateTime。我想将此值转换为2013-07-10T14:52:49我该怎么做? 最佳答案 这是你想要的吗?这会将您的ZonedDateTime转换为具有给定ZoneId的LocalDateTime,方法是将您的ZonedDateTime转换为Instant之前。LocalDateT

java - 如何将 Joda DateTime 对象与可接受的偏移量(公差)进行比较?

我想知道JodaTime中是否有任何标准API来比较具有指定容差的2个DateTime对象?我正在寻找最好使用Joda标准API的单行代码。不适用于像thispost中那样的时间算术表达式.理想情况下,它应该是这样的:booleanareNearlyEqual=SomeJodaAPIClass.equal(dt1,dt2,maxTolerance);谢谢! 最佳答案 使用这个:newDuration(dt1,dt2).isShorterThan(Duration.millis(maxTolerance))

java - 如何在使用 Jackson 反序列化 OffsetDateTime 时保留偏移量

在传入的JSON中,我有一个符合ISO8601标准的日期时间字段,其中包含时区偏移量。我想保留此偏移量,但不幸的是,Jackson在反序列化此字段时默认使用GMT/UTC(我从http://wiki.fasterxml.com/JacksonFAQDateHandling中了解到)。@RunWith(JUnit4.class)publicclassJacksonOffsetDateTimeTest{privateObjectMapperobjectMapper;@Beforepublicvoidinit(){objectMapper=Jackson2ObjectMapperBuilde