小编Luk*_* Vo的帖子

在Java中直接比较2 float/double是否安全?

如果我使用这样的比较是安全的(a是int,b和c是float/double):

a == b
b == c
Run Code Online (Sandbox Code Playgroud)

它可能听起来很荒谬,但在我的旧编程语言中,有时1 + 2 == 3是假的(因为左侧返回2.99999999999 ......).那么,这个:

Math.sqrt(b) == Math.sqrt(c)
b / 3 == 10 / 3 //In case b = 10, does it return true?
Run Code Online (Sandbox Code Playgroud)

java android

4
推荐指数
2
解决办法
7973
查看次数

防止 SweetAlert2 从 willClose 关闭/解除?

抱歉,如果我在文档中遗漏了某些内容,但我无法找到阻止在 SweetAlert 2 中关闭对话框的方法,这些将不起作用:

        await Swal.fire({
            html: diagHtml,
            showCancelButton: true,

            willClose: (el) => {
                console.log(el);

                if (someLogic()) {
                    event.preventDefault();
                    return false;
                }
            },
        });
Run Code Online (Sandbox Code Playgroud)

有没有办法让对话框保持不变,最好是使用async

javascript dialog sweetalert2

4
推荐指数
1
解决办法
6543
查看次数

在EXE文件末尾写入字节是否安全?

我听说如果我们在EXE文件的末尾附加一些字节,它仍然可以正常工作.在所有情况下都是如此吗?这是一种安全的方式吗?

我打算使用程序执行文件中的数据编写演示,因此它可以是安全的(至少对于普通用户而言)并且我不必在其他任何地方存储数据.

executable byte exe file

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

用于拆分数据行的String.split无法正常工作

我使用VB.NET为我的游戏创建数据(对于Android,Java代码),它的外观如下:

5;0000000100011100010000000;2;2
5;1000001100010000000000000;0,1;0,1
Run Code Online (Sandbox Code Playgroud)

每一行都是一个级别.在VB.NET中,我通过vbNewLine常量创建新行(我认为它的ASCII码是13)然后用IO.File.WriteAllText它将它写入文件.

在我的Java游戏中,我\n用来分割级别:

String[] levelData = rawData.split("\n");
Run Code Online (Sandbox Code Playgroud)

但是,在处理整个数据时,levelData在结束后总是有一个"新行".例如,levelData [0]是5;00...2;2<new line>导致Integer.parseInt异常的.然后我调试,发现这个:

rawData.charAt(31) //It's a \r, not \n
Run Code Online (Sandbox Code Playgroud)

所以,我改变了分割线:

String[] levelData = rawData.split("\r");
Run Code Online (Sandbox Code Playgroud)

但现在,levelData [1]将是<newline>5....

我究竟需要做些什么才能解决这个问题?请解释Java String中"新行"的工作原理.

.net java string newline

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

将一个二维数组转换为两个一维数组

你可能会对我的要求感到奇怪,但这是真的,将1转换two-dimensional array2 one-dimensional arrays.

这就是我的老师问的问题,他说他会给那些回答这个(我认为是棘手的)问题的人提供一个完美的观点.我很乐意将任何2维或n维数组转换为一维数组.但他说2,所以我认为必须与第二阵列有关.并且,他没有告诉什么类型的数组(int,String或object),所以我认为必须使用任何类型的二维数组.

如果没有人在这里找出他想要的东西,我将回答他:转换为1维数组,并留下第二个空(或让它没有元素).但我认为对于这样一个棘手的问题,这不是一个好的答案.

编辑:这是我的老师问题,逐字逐句(他只是在会话结束时用语音问,而不是在教科书中,作为奖励问题(有...一个很好的奖励奖励)):给定a 2-dimensional array,把它转换成两个 1-dimensional array s.

我不知道是否考虑过Java和C#中的[] [] 2-dimensional array,但C#确实有[,],这是二维数组.我们正在研究计算机算法,没有目标IDE或语言.

编辑2:我给他发了电子邮件,他拒绝提供额外的信息(如果我有更多的信息,他说这对其他人不公平),并且他没有对锯齿状阵列的想法发表任何评论.他回答中唯一有用的事情是:考虑[] [] 2-dimensional array.

c# java arrays algorithm

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

在解决方案中的项目之间共享PartialView?

我正在开发2个MVC5网站。它们分别运行,但实际上彼此相关(1个管理站点和1个用户站点)。在这两个站点中,我都必须使用HTML表渲染图形板。我将PartialView与Model一起使用。

目前,这是我的解决方案结构:

  • Project.Common(一个类库项目,包含模型)

  • Project.Admin(管理站点的MVC5项目),请参阅Project.Common。

  • Project.User(用于User站点的MVC5项目),请参阅Project.Common。

为了渲染图形板,我将使用BoardDataProject.Common中的类,这是可以的。但是使用当前的解决方案结构,我必须在每个MVC5项目中创建2个PartialView,以后可能很难维护。

请为重用PartialView提供一个好的解决方案。我已经知道我可以编写Helper,但是那样,我必须在C#代码中编写HTML代码,这不是很好。在Razor View中有什么方法可以做到这一点?

c# asp.net-mvc partial-views

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

网格不占用 100% 的宽度

我有以下 XAML 代码:

    <ListView Background="Blue" x:Name="lstFriends" Grid.Row="2" HorizontalContentAlignment="Stretch" >
        <ListView.ItemContainerStyle>
            <Style TargetType="ListViewItem">
                <Setter Property="HorizontalAlignment" Value="Stretch"/>
                <Setter Property="VerticalContentAlignment" Value="Stretch" />
            </Style>
        </ListView.ItemContainerStyle>

        <ListView.ItemTemplate>
            <DataTemplate>
                <Grid Background="Pink">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="64" />
                        <ColumnDefinition Width="*" />
                    </Grid.ColumnDefinitions>

                    <Image Grid.Column="0" Source="ms-appx:///Assets/Logo.png" Margin="12" VerticalAlignment="Top"></Image>

                    <StackPanel Orientation="Vertical" Grid.Column="1">
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*" />
                                <ColumnDefinition Width="auto" />
                            </Grid.ColumnDefinitions>

                            <TextBlock Grid.Column="0" Text="{Binding Path='Fullname'}" Style="{StaticResource ListViewItemSubheaderTextBlockStyle}"></TextBlock>
                            <Image Grid.Column="1" Source="{Binding Path='OnlineIcon'}" Width="16" Height="16" HorizontalAlignment="Right" />
                        </Grid>


                        <TextBlock Text="{Binding Path='Subtitle'}" Style="{StaticResource ListViewItemContentTextBlockStyle}" TextWrapping="WrapWholeWords" Margin="12"></TextBlock>
                    </StackPanel>
                </Grid>
            </DataTemplate>
        </ListView.ItemTemplate>
    </ListView>
Run Code Online (Sandbox Code Playgroud)

我已经设置了HorizontalContentAlignment,以及 …

layout xaml windows-phone-8.1

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

在异步上下文中添加到Dictionary时的NullReferenceException

我有一个非常奇怪的行为,如下图所示:

在此输入图像描述

正如您在Watch窗口中看到的那样,可能的一切null都不是null.

这是函数的完整代码:

    public LogInTokenCache GetUserIdFromToken(string token)
    {
        LogInTokenCache item = null;

        if (this.TokenCache.ContainsKey(token))
        {
            item = this.TokenCache[token];

            if (item.ExpirationTime < DateTime.Now)
            {
                this.TokenCache.Remove(item.Token);
                return null;
            }
        }
        else
        {
            LogInTokenBusiness tokenBusiness = new LogInTokenBusiness();

            var entity = tokenBusiness.FindToken(token);
            if (entity != null && entity.Token != null)
            {
                item = new LogInTokenCache()
                {
                    Token = entity.Token,
                    UserID = entity.UserId,
                    ExpirationTime = entity.ExpirationTime,
                };

                this.TokenCache.Add(item.Token, item);
            }
        }

        return item;
    }
Run Code Online (Sandbox Code Playgroud)

我使用了查找所有引用功能,这是我使用构造函数和声明的唯一地方(我将它用于整个Web应用程序):

public class IdentityController : Controller …
Run Code Online (Sandbox Code Playgroud)

.net c# dictionary nullreferenceexception asp.net-mvc-5

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

如何正确处理带有子元素的Javascript自定义元素(Web组件)?

我有一个Custom Element应该有很多 HTML 孩子的。我在课堂上初始化它时遇到了这个问题 constructor ' (结果一定没有孩子)。我明白原因并知道如何解决它。但我现在应该如何围绕它设计我的课程呢?请考虑这段代码:

class MyElement extends HTMLElement {
  constructor() {
    super();
  }  
  
  // Due to the problem, these codes that should be in constructor are moved here
  connectedCallback() {
    // Should have check for first time connection as well but ommited here for brevity
    this.innerHTML = `<a></a><div></div>`;
    this.a = this.querySelector("a");
    this.div = this.querySelector("div");
  }
  
  set myText(v) {
    this.a.textContent = v;
  }
  
  set url(v) {
    this.a.href = v;
  }
}

customElements.define("my-el", MyElement);

const frag …
Run Code Online (Sandbox Code Playgroud)

html javascript web-component custom-element

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

Android WebViewClient 的 ShouldInterceptRequest 在 MAUI WebView 中永远不会被调用

更新:这是一个已确认的错误。请在这里投票,因为它并没有真正受到 MS 的太多关注。


我需要按照该指南重写加载应用内 HTML 内容shouldInterceptRequest的方法。WebViewClient

这是带有可重现代码的存储库:GitHub。我还从MS Q&A中获取了示例代码:

// ...
.ConfigureMauiHandlers(handlers =>
{
    handlers.AddHandler<Microsoft.Maui.Controls.WebView, ProblemHandler2>();
});
// ...

internal class ProblemHandler2 : WebViewHandler
{

    protected override Android.Webkit.WebView CreatePlatformView()
    {
        var wv = new Android.Webkit.WebView(Android.App.Application.Context);
        wv.SetWebViewClient(new CustomWebClient());

        return wv;
    }

}
Run Code Online (Sandbox Code Playgroud)

在存储库中,我包含了 2 个自定义处理程序:

  • ProblemHandler2这是 MSFT 的准确片段。我意识到一个问题:设置 MAUIWebViewSource属性不再导航真正的 Android WebView:
        WebViewHandler.Mapper.AppendToMapping("MyHandler", (handler, view) =>
        {
#if ANDROID
            var xWv = handler.PlatformView;

            // For ProblemHandler2, this is …
Run Code Online (Sandbox Code Playgroud)

.net android webview maui

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