小编Fiz*_*uzz的帖子

Java:Enums与if-then-else的表现

我没有真正的运气,通过使用Google得到这个比较的简明答案,而不是做我自己耗时的评估,我想我会先问.

我很确定使用Enums的switch语句比if-then-else语句执行得更快,不管它是否是一个明显的区别是另一个问题.

有人可以为我解释一下吗?


感谢快速回复的人,我将在未来的项目中牢记这一点.

java performance enums if-statement premature-optimization

9
推荐指数
2
解决办法
9141
查看次数

解析java中的字段访问标志

我有一个任务,我必须解析java .class文件的字段访问标志.可以在此处找到.class文件的规范:类文件格式(第26和27页具有访问标志和十六进制值).

这很好,我可以做到这一点无后顾之忧.我的问题是有大量的组合.

我知道公共,私人和受保护是相互排斥的,这在一定程度上减少了组合.最终和瞬态也是相互排斥的.然而其余的则没有.

目前,我有一个大的switch语句来进行比较.我读取访问标志的十六进制值,然后递增计数器,具体取决于它是公共的,私有的还是受保护的.这样可以正常工作,但是在switch语句中列出每个组合似乎很麻烦.即公共静态,公共决赛,公共静态决赛等.

我想在访问标志和公共,私有或受保护的适当十六进制值上做模数,但public是0x0001,所以这不起作用.

有没有其他人对如何减少switch语句中的案例数有任何想法?

java parsing

9
推荐指数
2
解决办法
2041
查看次数

根据概率挑选随机项目

我知道,有一个类似的问题,但它使我感到困惑,所以我认为以我的方式提问更容易.

所以我有一系列价值观,正面和负面.它们越高,被选中的概率就越大.
我实际上无法确定如何分配概率,然后随机选择一个概率.我猜这个数组需要先排序,但之后我就有点迷失了.

c random probability

7
推荐指数
1
解决办法
6714
查看次数

VBA无法发送日历约会

当我手动创建日历提醒/约会时,我可以单击"邀请与会者"并选择要邀请的人员,然后单击"发送",每个人都将收到该日历提醒/约会.

我有以下代码以编程方式进行提醒,但它不会发送给目标收件人.如果我在脚本运行后打开提醒并单击"邀请与会者",我可以看到列表中填写了我要发送提醒的人,所以我不确定为什么它实际上并没有发送提醒他们.

任何人都可以为我阐明这一点吗?

Private Function CreateAppointment(SubjectStr As String, BodyStr As String, StartTime As Date, EndTime As Date, AllDay As Boolean)
    Dim olApp As Outlook.Application
    Dim Appt As Outlook.AppointmentItem
    ' Only create the reminder if there's no duplicate
    If (CheckForDuplicates(SubjectStr) = False) Then
        Set olApp = CreateObject("Outlook.Application")
        Set Appt = olApp.CreateItem(olAppointmentItem)
        Appt.Recipients.Add ("John Doe")
        Appt.Recipients.ResolveAll
        Appt.Subject = SubjectStr
        Appt.Start = StartTime
        Appt.End = EndTime
        Appt.AllDayEvent = AllDay
        Appt.Body = BodyStr
        Appt.ReminderSet = True
        Appt.Save
        Appt.Send
    End If
    Set Appt = Nothing …
Run Code Online (Sandbox Code Playgroud)

vba calendar outlook-vba appointment

5
推荐指数
1
解决办法
6851
查看次数

android getBearing无法按预期运行

如果有人问我,我很抱歉,我的搜索只发现了点点滴滴......

好的,所以我对getBearing的API描述的理解是,如果你从北,东移动到南,它将显示0 - > 180度.如果你从北,西,南移动,它将显示0 - > -180度.

然而,这似乎并非如此,我只是看着我的轴承转动到300度,然后问问题,它是N - > E - > S - > W(正如人们所期望的那样)或N - > W - > S - > E(我知道它可能不会......但谷歌做了更奇怪的事情).

我能想到的另一件事是轴承超过180是由于准确性.

有人可以请一些关于我的思路是否正确的见解.

gps android

2
推荐指数
1
解决办法
3319
查看次数

VBA使用format()或CDate()将字符串转换为日期

如果之前有人询问过,请指出正确的方向.我似乎找不到任何有用的谷歌技巧.

我有以下代码,它读取这样的字符串; 停电StartDate:05/10/11 23:59 EST
并提取日期信息,即05/10/11 23:59

sStartTime = Mid(objItem.Body, 18, 15) ' Extract the start time
Debug.Print "sStartTime after reading: " & sStartTime
sStartTime = Format(sStartTime, "dd/mm/yy hh:mm") ' Format date correctly
Debug.Print "sStartTime after formatting: " & sStartTime
Run Code Online (Sandbox Code Playgroud)

这是我通常得到的输出:

sStartTime after reading:  05/10/11 23:59
sStartTime after formatting: 10/05/11 23:59
Run Code Online (Sandbox Code Playgroud)

但有时它甚至交换日期和年份:

sStartTime after reading:  14/07/11 23:59
sStartTime after formatting: 11/07/14 23:59
Run Code Online (Sandbox Code Playgroud)

然后CDate完全填充东西,将日期转换为1931年的事情...任何帮助将日期字符串转换为日期对象将非常感激.

===============

编辑:应该在最初的帖子中提到这一点.读取字符串背后的想法是转换为Date对象,以便我可以创建日历约会.目前我用这个;

dStartTime = CDate(sStartTime)
Run Code Online (Sandbox Code Playgroud)

我认为是问题线,sStartTime ="29/09/11 23:00"(dd/mm/yy hh:mm)和dStartTime ="11/9/2029 11:00:00 PM"

所以很明显会出现一些转换问题,但是我不知道为了将29/09/11 23:00变成等效的日期对象,我想用什么格式来提供CDate函数.

outlook vba formatdatetime outlook-vba

0
推荐指数
1
解决办法
3万
查看次数