小编Jac*_*III的帖子

为什么刷新页面时localStorage条目会重置?

我正在为我的班级制作一个猜谜游戏,我们应该实施一个存储在本地的记分系统.我以为我理解了这个概念,但它并没有按照我的意图运作.我在玩游戏时将值存储在localStorage中,但是当我刷新时,值会重置......任何洞察力都会很棒!下面是我的脚本的开头,下面是我的HTML文件.

编辑:我将得分初始化为1的原因是因为每当用户猜对时,加上4分(产生+3),当用户猜错时,扣除1分(产生-2).每次单击重新启动按钮时,用户将再次失去1点.

编辑2:不妨粘贴我的脚本的其余部分以获得更清晰:P

编辑3:JSfiddle太棒了!http://jsfiddle.net/2pdaoeu6/

'use strict';
//Define a container for the game, its variables and its methods.
var game = {
  answerPosition: 0,   // position of the current answer in the answersList - start at 0
  display: '',         // the current dash/guessed letters display - ex '-a-a--r--t'
  wrong: '',           // all the wrong letters guessed so far
  answer: '',          // the correct answer - one word from game.answersList
  wrongCount: 0,       // the number of wrong guesses so far
  over: …
Run Code Online (Sandbox Code Playgroud)

javascript html5 local-storage

6
推荐指数
1
解决办法
4183
查看次数

检查一个对象是否是任意一个类列表的实例 (Android)

我已经研究这个有一段时间了,虽然它并不重要,但我想知道是否有一种简洁的方法(也许是 1 个衬垫)可以用来检查一个对象是否是多个类中任何一个的实例, 我可以做:

if(anObject instanceof Pupil){ ... } 
else if(anObject instanceof Teacher) { ... }
Run Code Online (Sandbox Code Playgroud)

等等等等。有没有更好的方法来做到这一点,或者这是否像我想要的那样好?

java android

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

Java初学者:找不到符号

我一直在搜索java教科书几个小时试图确定我做错了什么.我得到的错误是第13行的"找不到符号",这是代码行:

 System.out.println("The three initials are " + 
     getInitials(Harry, Joseph, Hacker));
Run Code Online (Sandbox Code Playgroud)

说明在代码中注释.我很确定它与我设置的名字有关..但我不确定.

public class InitialsTest {
     /**
       Gets the initials of this name
      @params first, middle, and last names
      @return a string consisting of the first character of the first, middle,
  and last name
      */

    public static void main(String[] args) {
         System.out.println("The three initials are " + 
         getInitials(Harry, Joseph, Hacker));
    }

    public static String getInitials(String one, String two, String three) {
        String initials = one.substring(0,1) + two.substring(0,1) + three.substring(0,1);
        return initials; …
Run Code Online (Sandbox Code Playgroud)

java

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

iOS UITableView隐藏标题空间

在视图控制器中,我只有一个UITableView.在IB中,我将Header&Footer高度设为1,并且还添加了以下代码,但是在第1个单元格之上,它们有很多标题空间.我想摆脱那个空间.甚至滚动条也从第一个单元格开始,而不是从顶部开始.

-(CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
CGFloat height = 0.0001;
return height;
}

-(CGFloat) tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
CGFloat height = 0.0001;
return height;
}

-(UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
// Create Empty View
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width,
                                                        [self tableView:self.visitorlistsTv heightForHeaderInSection:section]) ];
return view;
}

-(UIView *) tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
// Create Empty View
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width,
                                                        [self tableView:self.visitorlistsTv heightForFooterInSection:section]) ];
return view;

}
Run Code Online (Sandbox Code Playgroud)

使用上面的代码,页脚部分被隐藏.但是也无法隐藏标题.

查看解决方案的其他链接我还在View中添加了TableView,为tableview添加了约束,但仍然是标题部分仍然是它们的.

我哪里错了?如何摆脱它?

objective-c uitableview ios

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

将十六进制文件从文件添加到List <byte>

我正在尝试List<byte>从包含字符串(十六进制)的文件中创建一个.定义是:

List<byte> myArray = new List<byte>();
Run Code Online (Sandbox Code Playgroud)

如果我想直接添加我的信息,我会使用以下内容:

  myArray.Add(0xb8);
Run Code Online (Sandbox Code Playgroud)

注意:没有任何报价或双引号.

问题是我想从文件中做同样的事情!现在我想知道什么0xb8是类型,所以我使用以下代码:

0xc3.GetType().ToString()
Run Code Online (Sandbox Code Playgroud)

结果是:System.Int32 !!!!

但是当我从文件中读取字符串并使用这样的代码时,它会给我以下错误.

代码:

 Line = "0xb8";
myArray.Add(Convert.ToInt32(Line));
Run Code Online (Sandbox Code Playgroud)

错误:

Argument 1: cannot convert from 'int' to 'byte'
Run Code Online (Sandbox Code Playgroud)

而且很清楚.因为唯一的重载myArray只能byte作为一个参数.是什么让这么复杂,我是为什么,当我加不给我任何错误Int32,以myArraymyArray.Add(0xb8);.

我认为它应该是一种字节形式!也许 !

为什么不给出任何错误以及如何实现这种情况(我的意思是从字符串添加字节到myArray)?

c# arrays hex byte

5
推荐指数
2
解决办法
411
查看次数

从 svg 创建静态 png 不带抗锯齿,带或不带画布

我想要的是

我想获取一个矢量 SVG 图像并从中创建一个没有抗锯齿的光栅 png。svg 将根据用户输入(文本、粗体、字体系列)动态生成。首选 png,但也可以接受其他光栅格式。

我在尝试什么

var svg = '<svg><g><text>Hello World</text></g></svg>';
var img = document.createElement('img');
img.setAttribute('src','data:image/svg+xml;base64,' + btoa(svg_static_data) );
img.onload = function() {
    ctx.drawImage(img, 0, 0);
    ctx.mozImageSmoothingEnabled = false;
    ctx.webkitImageSmoothingEnabled = false;
    ctx.msImageSmoothingEnabled = false;
    ctx.imageSmoothingEnabled = false;
    static_image = canvas.toDataURL('image/png');
};
Run Code Online (Sandbox Code Playgroud)

这里的 svg 非常简单,只是为了演示。在这里,我将 svg 转换为 canvas 元素,并将 canvas 元素转换为图像。当这导致抗锯齿时,我发现可能有帮助的唯一配置是imageSmoothingEnabled,但是我仍然得到抗锯齿,可能是因为该配置适用于用画布本身绘制的元素。我也试过把那个配置放在上面drawImage,但没有运气。

我需要的

将动态非动画 SVG 转换为至少大部分相同的光栅图像的函数,该 SVG 可能包含许多元素和属性,包括弯曲文本。

javascript jquery svg canvas antialiasing

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

如何在Java的ExecutorService中检索和处理异常

我试图找出一种方法来处理多线程设置中的异常.我想并行执行某些任务,每个任务都可能抛出一个我需要做出反应的异常(基本上,通过将失败的任务放回执行队列).但是,实际上从线程中获取异常的唯一方法是创建Future并调用其get()方法.但是,这实际上将调用转换为同步调用.

也许一些代码会说明这一点:

ExecutorService executor = Executors.newFixedThreadPool(nThreads);
Task task = taskQueue.poll(); // let's assume that task implements Runnable
try {
  executor.execute(task);
}
catch(Exception ex) {
  // record the failed task, so that it can be re-added to the queue 
} 
Run Code Online (Sandbox Code Playgroud)

但是,在这种情况下,所有任务都会启动,但这里的异常似乎没有被捕获到此catch块中.

另一种方法是使用Future而不是线程并检索其结果:

try {
  Future<?> future = executor.submit(task);
  future.get();
}
...
Run Code Online (Sandbox Code Playgroud)

在这种情况下,异常会在catch块中被捕获,但代价是必须等到此操作完成.因此,根据需要,任务按顺序执行而不是并行执行.

我错过了什么?如何捕捉每个人的任务例外并对他们做出反应?

java multithreading exception-handling future executor

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

如何撤消"git rm -r -f*"

我第一次使用git,我有一个目录,里面写着几个程序并执行了以下步骤

  1. 我做到了 git add .
  2. 然后git commit,我收到了一条消息Aborting commit due to empty commit message.
  3. 然后我想,让我在常见消息下提交一组文件.所以我想删除所有添加的文件.
  4. 所以我做了 git rm -r -f
  5. 当我这样做时,ls我丢失了所有代码.有什么方法可以让他们回来,我的愚蠢我甚至没有备份副本.

到目前为止我所遵循的事情

我用Google搜索了一些发现的命令,但是它们没有用

git stash 如果我输入这个命令我得到

致命:糟糕的修改'HEAD'致命:糟糕的修订'HEAD'致命:需要单一修订您还没有初始提交

git reset HEAD,如果我输入这个命令我得到

致命:模糊的论点'HEAD':未知的修订或路径不在工作树中.使用" - "将路径与修订分开

我真的需要把这些文件拿回来!

我创建GIT时遵循的步骤

  1. mkdir BareRepo
  2. BareRepo目录我做git init,git status,git config --bool core.bare true
  3. 然后我克隆了BareRepo git clone BareRepo/ Programs/
  4. Programs目录中我做了以上所说的所有事情

git git-rm

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

getx和getminx之间的区别

我有一个关于Java的Rectangle类的问题.我想知道rectangle.getX()和之间的区别是什么 rectangle.getMinX().当我谷歌搜索它时,在Java文档中我读了这个getX():

以double精度返回边界Rectangle的X坐标.

因为getMinX()我读过以下内容:

以double精度返回Shape的框架矩形的最小X坐标.

现在我想知道:如果对于一个Rectangle,怎么会有不同的X坐标,应该只有一个:

new Rectangle(0,0,100,100) = p1(0,0)|p2(100,0)|p3(0,100)|p4(100,100).
Run Code Online (Sandbox Code Playgroud)

我会理解,例如getMaxX(),是什么样的getX()+getWidth(),但那会getMinX()是什么?我对此非常困惑.

我只需要一个简短的解释,我将非常感激.

java

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

java - 如何比较两个可能为null的对象?

我需要能够比较两个变量,这些变量有时可能为空.如果它们都是空的,我仍然希望它被认为是平等的.有没有适当的方法来做到这一点?

我在NetBeans中测试它,并查看.equals()的文档,并看到空引用表现得很奇怪.

这些是我的例子和结果:

Object a = null, b = null;
System.out.println(a == b);
Run Code Online (Sandbox Code Playgroud)

返回true.

要么:

System.out.println(a.equals(b));
Run Code Online (Sandbox Code Playgroud)

抛出NullPointerException.

= =在这种情况下我是如何工作的,或者我只是在这里'变得幸运'而且由于其他原因它得出的结论是"真的"?

NullPointerException也让我感到困惑,因为我总是将Object的equals方法理解为引用相等.文档反复声明"非空"对象,但为什么这对于参考比较有用呢?任何澄清将不胜感激.

java null nullpointerexception

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