Matlab调用java8`Java.time`类

Matlab调用java8`Java.time`类,java,matlab,class,time,Java,Matlab,Class,Time,以下是中的示例: Matlab R2018a,Windows 8 64位 MATLAB\u JAVA环境变量:如果未使用,或者如果设置为C:\Program Files\JAVA\jre1.8.0\u 251,则这两个变量都是在几分钟前下载的 version-java:java 1.8.0_251-b08与Oracle Corporation java HotSpot(TM)64位服务器虚拟机混合模式 computer('arch'):win64 我试图运行这个Java 8Java.time

以下是中的示例:

  • Matlab R2018a,Windows 8 64位
  • MATLAB\u JAVA
    环境变量:如果未使用,或者如果设置为
    C:\Program Files\JAVA\jre1.8.0\u 251
    ,则这两个变量都是在几分钟前下载的
  • version-java
    java 1.8.0_251-b08与Oracle Corporation java HotSpot(TM)64位服务器虚拟机混合模式
  • computer('arch')
    win64
我试图运行这个Java 8
Java.time
class调用,但发现一个错误:

>> localdate=java.time.LocalDate.parse('2020-04-19')
No method 'parse' with matching signature found for class 'java.time.LocalDate'.
像这样的简单调用可以工作:

>> java.time.LocalDate.now
2020-04-19 [1x1 LocalDate]

我做错了什么?

java.time.LocalDate.parse
定义为使用
CharSequence
,而不是
字符串

public static LocalDate parse(CharSequence text)
Matlab将自动将Matlab
char
string
数组转换为
java.lang.string
,但不会转换为
CharSequence
。因此,您必须通过自己对字符串调用
java.lang.String(…)
来提供显式转换:

>> localdate=java.time.LocalDate.parse('2020-04-19')
No method 'parse' with matching signature found for class 'java.time.LocalDate'. 
>> localdate=java.time.LocalDate.parse(java.lang.String('2020-04-19'))
localdate =
2020-04-19
>> 

java.time.LocalDate.parse
被定义为采用
CharSequence
,而不是
字符串

public static LocalDate parse(CharSequence text)
Matlab将自动将Matlab
char
string
数组转换为
java.lang.string
,但不会转换为
CharSequence
。因此,您必须通过自己对字符串调用
java.lang.String(…)
来提供显式转换:

>> localdate=java.time.LocalDate.parse('2020-04-19')
No method 'parse' with matching signature found for class 'java.time.LocalDate'. 
>> localdate=java.time.LocalDate.parse(java.lang.String('2020-04-19'))
localdate =
2020-04-19
>> 

一个非常微妙的问题!谢谢。一个非常微妙的问题!谢谢