小编Rol*_*and的帖子

Java 7:路径与文件

对于用Java 7编写的新应用程序,是否有任何理由再次使用java.io.File对象或者我们是否可以认为它已被弃用?

我相信一个人java.nio.file.Path可以做一切可以做的事情java.io.File.

java file-io nio path

191
推荐指数
5
解决办法
7万
查看次数

如何在Java中实现FSM - 有限状态机

我有工作要做,我需要你的帮助.我们想要实现一个FSM - Finite State Machine,以识别char序列(如:A,B,C,A,C),并告诉它是否被接受.

我们认为,实行三类:State,EventMachine.该state班提出的一个节点FSM,我们认为有实现它State design pattern,每个节点将抽象类扩展状态和每一个类可以处理不同类型的事件,并指示过渡到一个新的状态.你认为这是个好主意吗?

第二件事,我们不知道如何保存所有过渡.我们再一次考虑用某种方式来实现它,它具有map起点并且在下一个状态下获得某种向量,但我不确定这是一个好主意.

我很乐意得到一些如何实现它的想法,或者你可以给我一些起点.

我应该如何保存FSM,这意味着我应该如何在程序开始时构建树?我用Google搜索并找到了很多例子但没有任何帮助我的东西.

非常感谢.

java state design-patterns state-machine fsm

48
推荐指数
6
解决办法
10万
查看次数

Javadoc @return标签评论重复是否必要?

对于不更改实例状态的函数,该方法的javadoc注释通常与Java-API中@ return-tag的注释相同或非常相似.

boolean Collection.isEmpty()

  • 如果此collection不包含任何元素,则返回true.
  • 返回:如果此collection不包含任何元素,则返回true

现在我正在为许多简单的方法编写javadoc,比如getExpression(),我遇到同样的问题.我应该像在API中那样做还是把它留下来?

java javadoc

32
推荐指数
4
解决办法
4万
查看次数

什么是C++中的_In_?

我已经搜索了很多,但没有得到任何有用的结果.

我目前正在尝试为Windows 8 Metro编写简单的DirextX游戏,并且遇到了_In_相当多的问题.我只是想知道它是什么.

此外,我已经看到很多使用^作为*我发现奇怪的指针.最重要的是,一些类有一个接口ref class MyClass,我相信它是C#易读性.

无论如何,任何帮助都会很棒.

c c++ microsoft-metro c++-cx

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

为什么~size_t(0)(在大多数32位系统中= = 0xFFFFFFFF)不是有效的数组索引?

引用此博文:

http://www.codesynthesis.com/~boris/blog/2008/10/13/writing-64-bit-safe-code/

这是有效的,因为有效的内存索引只能在[0,~size_t(0)-1]范围内.例如,在std :: string中使用相同的方法.

那么为什么~size_t(0)(这通常应该0xFFFFFFFF在32位系统中相等)不是有效的数组索引?我假设如果你有32位你应该能够引用整个范围[0,0xFFFFFFFF],不是吗?

c c++ memory

22
推荐指数
3
解决办法
3266
查看次数

Java 7 - 如何检查操作系统是否符合POSIX标准

我正在编写一个跨平台的应用程序,它创建临时文件并将这些文件复制到另一个位置,每个人都需要这些文件.(默认情况下,只有所有者对临时文件具有读访问权.)我尝试使用POSIX文件权限,如下所示:

FileAttribute<Set<PosixFilePermission>> attrs =
  PosixFilePermissions.asFileAttribute(PosixFilePermissions.fromString("rw-r--r--"));
Path temp = Files.createTempFile(null, ".tmp", attrs);
Run Code Online (Sandbox Code Playgroud)

但这会导致非POSIX平台出现异常:

java.lang.UnsupportedOperationException: 'posix:permissions' not supported as initial attribute
Run Code Online (Sandbox Code Playgroud)

我想添加一个简单的检查,以便我可以在必要时使用文件权限,而不会破坏与其他平台的兼容性.

java posix nio nio2

22
推荐指数
1
解决办法
3090
查看次数

为什么ImageView.setImageMatrix()不起作用?

我想使用ImageView.setImageMatrix(矩阵)旋转图像,但它根本没有任何效果.我叫做matrix.postRotate(45,20,20); 在将其传递给上述函数但没有效果之前,图像不会旋转.为什么?

matrix.postRotate(45, 20, 20);
ImageView.setImageMatrix(matrix)
Run Code Online (Sandbox Code Playgroud)

android android-layout

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

读取的重新排序

假设有两个没有同步的线程,一个设置n = 1另一个执行method().

在下面的"读取"中总是指读取字段n.

public class MyClass
{
  public int n = 0;

  public void method() {
    System.out.println(n); //read 1
    System.out.println(n); //read 2
  }
}
Run Code Online (Sandbox Code Playgroud)

以下输出是否可行?

1
0
Run Code Online (Sandbox Code Playgroud)

答案是肯定的,因为即使读取1发生在读取2之前,仍然可以在读取1之前重新排序读取2,因为它不会改变线程内执行的语义.

这个推理是否正确?

java multithreading

18
推荐指数
1
解决办法
2120
查看次数

如何/何时收集处理程序垃圾?

在我的一类中,我有以下代码:

mHandler = createHandler();

private Handler createHandler() {
    return new Handler() {
        public void handleMessage (Message msg) {
            update();
            if (!paused) {
                sendEmptyMessageDelayed(0, 300);
            }
        }
    };
}
Run Code Online (Sandbox Code Playgroud)

文件说:

http://developer.android.com/reference/android/os/Handler.html

每个Handler实例都与一个线程和该线程的消息队列相关联

因此,如果我理解正确,只要应用程序线程正在运行,Handler就不会被垃圾收集,这是正确的吗?

在我的具体示例中,由于Handler是一个匿名内部类,因此它具有对封闭Object的隐式引用以及由其指向的对象的整个层次结构.这看起来像是一个内存泄漏的配方.

顺便说一句,我可以让处理程序停止发送消息(这就是为什么我有if (!paused))但这不会使它成为GCed,对吧?

那么有没有办法从消息队列中删除Handler并使其成为GCed?

android

16
推荐指数
2
解决办法
5431
查看次数

图像按钮仅在单击图像时响应,而不响应按钮内部的区域

我正在使用以下按钮样式,它消除了边框并使透明背景形成我的图像按钮:

  <Style x:Key="EmptyButtonStyle" TargetType="{x:Type Button}">
    <Setter Property="Background" Value="#00000000"/>
    <Setter Property="BorderBrush" Value="#00000000"/>
    <Setter Property="BorderThickness" Value="0"/>
    <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
    <Setter Property="HorizontalContentAlignment" Value="Center"/>
    <Setter Property="VerticalContentAlignment" Value="Center"/>
    <Setter Property="Padding" Value="1"/>
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type Button}">
                <ContentPresenter 
                    HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" 
                    Margin="{TemplateBinding Padding}" 
                    RecognizesAccessKey="True" 
                    SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" 
                    VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>
Run Code Online (Sandbox Code Playgroud)

样式来自以下答案: 带有圆形图像的WPF按钮

现在的问题是无论实际按钮有多大,可点击区域都被限制在图像中:

按钮问题

我的按钮代码:

<Button Name="n02" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Style="{DynamicResource EmptyButtonStyle}" Canvas.Left="308" Canvas.Top="157" Height="106" Width="120">
        <Image Source="boto_face_off.PNG" Height="61" Width="59" />
    </Button>
Run Code Online (Sandbox Code Playgroud)

问题:如何使整个按钮区域对点击作出反应?我想让它保持透明,没有现在的边框.

wpf user-controls styles button wpf-controls

16
推荐指数
2
解决办法
8684
查看次数