`
somefuture
  • 浏览: 1089695 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
  Instant 类是机器易读的时间信息,存放的是unix时间戳。 import java.time.Duration; import java.time.Instant; public class InstantExample { public static void main(String[] args) { Instant timestamp = Instant.now(); System.out.println("当前时间 = "+timestamp); Instant specificTime = Instant.o ...
LocalTime是不可变的时间类,默认格式hh:mm:ss.zzz. 和LocalDate一样,这个类也有时区信息,并且可以通过时分秒创建。 import java.time.LocalTime; import java.time.ZoneId; /** * LocalTime Examples * @author somefuture * */ public class LocalTimeExample { public static void main(String[] args) { LocalTime time = LocalTime.now ...
LocalDateTime 包含日期和时间。默认格式是 yyyy-MM-dd-HH-mm-ss.zzz. 要创建它的实例,需要传入 LocalDate 和LocalTime : LocalDateTime today = LocalDateTime.now(); System.out.println("现在时间"+today); today = LocalDateTime.of(LocalDate.now(), LocalTime.now()); System.out.println(" ...
Java 8 Date Time API是我们java开发一直寻找的时间处理工具。java从一开始设计的时间类就让人头疼,好在现在终于有了java8。 为什么我们需要这套API 只要是有这么几个理由: Java的日期和时间类设计的不统一,在 java.util 和 java ...
LocalDate 是日期的不可变类,默认格式yyyy-MM-dd. 可以用 now() 方法获取当前日期,也可以传入年月日创建实例。这个类还提供了now()的重载方法,可以传入一个时区拿到现在那个时区的日期. java.sql.Date有的功能它都有。 import java.time.LocalDate; import java.time.Month; import java.time.ZoneId; /** * LocalDate Examples * @author somefuture * */ public class LocalDateExampl ...
Spring的prototype向singleton注入会有问题,具体见 Spring Bean的prototype无用的解决 除了这篇文章里介绍的方法(ApplicationContext .getBean和代理模式)以外,在java(Spring)领域还有集中其他的实现方式。 这里我们说一下。   1. 使用Spring的ObjectFactory 如果本来的代码是这样的 @Autowired private PrototypeBean bean;  在单例里直接使用或者即使是在多例里面获取多次,这样拿到的也是同样的一个实例。 我们的状态bean就无效了 ...
Q# 程序会包含一个或多个操作(operation)。操作描述了量子操作带来的影响。 还可以包含一个或多个方法(function)。方法用来操作经典数据,只用来计算。   每个操作还可以调用其他操作(这不就是java里的方法吗?说对了一半,是java里的静态方法)。   Q#文件被编译后,每个操作都会是一个.net的类。所以Q#的操作可以被.net的其他语言调用。   一个操作会有一个输入、一个输出,会有一个body体。 下面定义一个操作: operation BitFlip(target : Qubit) : () { body { X(tar ...
做为一门新语言,要理解他 我们尽量使用其他大众语言的概念和他类比。   Q#编写的程序以.qs结尾。 一个最简单的Q#程序也要包含命名空间namespace。 C#里也有namespace,而java里用的类似概念是package。   有在Q#里引用其他命名空间的定义,需要使用open: namespace Example { open Microsoft.Quantum.Primitive; // ... }  java里用的是import. C#好像是using。   在命名空间内,开发者可以定义任何操作、方法、自定义类型等。 后面我们会 ...
现在微服务做得越来越多了,头就越来月疼了。 跨系统事务和跨系统分页是最头疼的(其实头疼也没用,解决不了的问题)   现在有这么个需求(其实同样的需求见到不少了,一直没解决): 向数据库插入记录,并把数据发MQ给其他系统消费。 其他系统接收到消息后会调用查询接口回来查询更多信息。 可是这个时候可能插入记录的事务都还没提交,所以根本查询不到。   通常的做法是延迟消费(或者延迟发送): 比如假设事务在几分钟内一定会提交,那就延后10分钟后再过去查询。 查询到了就可以了。 查询不到就任务之前的事务回滚了。。   其实这个场景如果在spring环境下,有两种解决方案: 一 ...
量子门我们前面提到过一句。   量子计算机之所以能成为量子计算机,更在于其对于量子比特的特殊计算操作。那么这里就需要引入量子逻辑门(Quantum Logic Gates)的概念。每一个 Quantum Logic Gate 都对应了一个数学上面的一个 ...
前面说过,量子比特qubit有状态,并且我们用二维列向量表示它的状态。 而“观测”就是看一下这个比特的状态信息。 但是就这一看,量子比特不论本来处于什么叠加态,也会立即塌缩到基态:或  当我们观测状态为的量子时,我们有的概率得到0态,的概率得到1态:  因为概率取到的是值的平方,所以值的符号并不影响观测结果的概率。 而且,对量子的观测不一定会改变量子原本的状态。 当量子本来就在基态的时候,观测得到的就是它当前的状态。 这时候量子比特和传统比特没啥区别。我们可以复制他们并且对它们进行操作。 但是如果量子处于叠加态,观测就会改变他们的状态,这样量子就无法被复制了,因为你也不知道它本 ...
量子比特,是量子领域的单位。 常规信息论的基本单位是比特bit,8个就是一个字节。 量子比特qubit,也就是比特在量子领域的对应物。   比特可以表示的状态是0和1 qubit也可以表示0和1(当然和比特的0 1不一样,是一个向量),还可以表示0和1的叠加。   qubit的状态向量是一个二维列向量,里面两个数的平方和是1. 和我们最早学习向量的值不同,状态向量的值可以是复数。 如果有复数,就不是他们的平方和,而是他们模的平方和。 下面的都可以是qubit的状态向量     如同二维平面坐标系的坐标轴一样,状态向量(后面我们叫他态矢吧)也有基向量: 其他的态矢都 ...
要开发量子计算程序,多少了解点量子物理也是应该的。   我大学是学电子商务的,研究生才转为工科开始学计算机科学,所以对大学物理也没有学过。(我庆幸自己错过了大学四大挂之一) 这篇文章就简单说一下我对量子 ...
前面我们编写了量子叠加程序,使用的操作是H。   现在我们对这个程序稍作变更,让它具有量子纠缠能力。   量子纠缠需要两个量子比特,所以我们在using中使用2: using (qubits = Qubit[2])   我们把第二个量子初始化为Zero: Set (initial, qubits[0]); Set (Zero, qubits[1]);   量子纠缠使用的操作是CNOT: H(qubits[0]); ...
在这篇文章里我们会写一个Q#程序,Hello world级别的。   对于量子理论,我并不很了解。同事对于Q#也不太了解。所以这篇文章并不会研究程序运行的原理,只是看一下结果,表明Q#的能力。   打开已经扩展了Q#能力的VS 2017。新建一个项目,选择C#下面的Q# Application。起名叫Bell。 VS会帮我们创建好一个Operation.cs文件和一个Driver.qs文件。 operation,操作,就类似与C#和java里的静态方法。   右键qs文件,将它重命名为Bell.qs。 打开Bell.qs,将操作名Operation改成Set。并添加两个参数 ...
Global site tag (gtag.js) - Google Analytics