我有两个excel范围.
我需要做以下事情:
1).计算我有多少相等的值,除了零.在我的例子中,它应该是2(1和8).我找到了这个公式:SUMPRODUCT(--(A2:E2=A3:E3))但它只匹配B1,B2,忽略了8号也出现了两次.
2).另外,我需要在单个单元格中使用这些重复值,用逗号分隔,就像"1,8"一样.
我无法理解为什么我的代码会捕获异常..我认为构造函数有问题,但我没有看到确切的位置..
public class OrderDate
{
private String date;
public OrderDate(String date) throws IllegalDateFormatException
{
IllegalDateFormatException wrongDate =
new IllegalDateFormatException("Date must have the following"
+ " format: dd/mm/yy");
if(date.length() > 8
|| (date.charAt(0) == 0 && date.charAt(1) == 0)
|| (date.charAt(3) == 0 && date.charAt(4) == 0)
|| (date.charAt(0) == 3 && date.charAt(1) > 1)
|| (date.charAt(3) == 1 && date.charAt(4) > 2)
|| date.charAt(2) != '/'
|| date.charAt(5) != '/'
|| date.charAt(0) > 3
|| date.charAt(3) > 1
|| !isDigit(date.charAt(0)) …Run Code Online (Sandbox Code Playgroud) 为什么在这种情况下我收到一条消息"应该检查方法返回值"?
if(!qty.contains("@"))
mgm.addOrder(date, Integer.parseInt(qty));
else
{
qty.replace("@", "");
mgm.addOrder(date, Integer.parseInt(qty));
mgm.startNew();
}
Run Code Online (Sandbox Code Playgroud)
我收到的消息是:qty.replace("@","");
if语句检查了@是否存在,还有什么需要使它完美?
有很多类似的主题,但我找不到我的问题到底在哪里.
CustomerDetails - 抽象类
该方法从文件中读取,其中第一个字母确定客户的类型(CustomerDetails的子类).
public static CustomerDetails readCustomerData(....)
try
{
while(...hasNextLine())
{
.....
.....
switch(firstLetter)
{
case 'A': ....
PrivateCustomerDetails aaa = new PrivateCustomerDetails(... inherited fields + some extra ones)
return aaa;
case 'B': ... BusinessCustomerDetails bbb = .....
return bbb;
default: return null;
}
}
// possibly return something here..
}
catch(Exception e)
{
...
return null;
}
Run Code Online (Sandbox Code Playgroud)
我注意到如果我输入"return null;" 在上面的评论字段中,缺少的返回语句消失.但我不明白为什么?我有可能的场景以及默认语句,它涵盖了所有其他情况.
此外,我无法初始化CustomerDetails对象,为其分配新的子类对象并返回,因为它是抽象的..
另外,我不能使子类的对象的名称相同,最后返回它.
需要一些澄清..非常感谢!
Public Function Compare(r1 As Range, r2 As Range) As Long
Dim r As Range, v As Variant, v2 As Variant
Dim rr As Range
For Each r In r1
v = r.Value
If v <> 0 And v <> "" Then
For Each rr In r2
v2 = rr.Value
If v = v2 Then Compare = Compare + 1
Next rr
End If
Next r
End Function
Run Code Online (Sandbox Code Playgroud)
此UDF比较2个范围并返回匹配值的数量.我想比较3个范围,以便找到同时在所有3个范围中出现的值.
非常感谢任何帮助.