有人可以解释我为什么不能以这种方式乘以两个字节?
byte a = 1;
byte b = 1;
byte c = a*b;
Run Code Online (Sandbox Code Playgroud)
要么
byte a = 1;
byte b = 1;
short c = a*b;
Run Code Online (Sandbox Code Playgroud)
为什么我必须这样做呢?
byte a = 1;
byte b = 1;
byte c = (byte)(a*b);
Run Code Online (Sandbox Code Playgroud)
要么
byte a = 1;
byte b = 1;
int/double/float/long c = a*b;
Run Code Online (Sandbox Code Playgroud) 我必须执行将作为标量和数组工作的函数。例如:
@t = testfunc(1, 2, 3, 4);
$x = testfunc(1, 2, 3, 4);
Run Code Online (Sandbox Code Playgroud)
有人知道我该怎么做吗?如果是 $x,则必须打印“标量”;如果是 @t,则必须打印“数组”。我尝试做这样的事情:
sub testfunc()
{
print "test";
}
Run Code Online (Sandbox Code Playgroud)
但即使这样也行不通:/
我正在从这个页面做一些测试:http://scjptest.com/mock-test.xhtml?execution = e7s1,并且有一个问题"这个程序执行时的结果是什么?".这是代码:
public class SuperHotel {
static int x[];
static {
x[0] = 1;
}
public static void main(String args[]) {
}
}
Run Code Online (Sandbox Code Playgroud)
答案是"抛出ExceptionInInitializerError".当"ExceptionInInitializerError"可能发生时,有人会说我这个代码中发生的原因吗?
所以我没什么问题,如果字符串中的最后一个字符是"a",我需要检入perl.我知道,我可以这样做:
$test = "mama";
$test2 = substr $test, -1
Run Code Online (Sandbox Code Playgroud)
现在只检查$ test2是否不等于"a".但是我如何用正则表达式做到这一点?