小编ser*_*erg的帖子

检查字符串是否包含唯一字符的最简单方法是什么?

如果一个单词由独特的字母组成(不区分大小写),我需要检查Java.由于直接的解决方案很无聊,我想出了:

  1. 对于字符串中的每个字符,检查是否indexOf(char) == lastIndexOf(char).
  2. 添加所有字符HashSet并检查set size ==字符串长度.
  3. 将字符串转换为char数组,按字母顺序排序,循环遍历数组元素并检查是否c[i] == c[i+1].

目前我最喜欢#2,似乎是最简单的方式.其他有趣的解决方案?

java string algorithm

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

Google Chrome扩展程序可获取页面信息

我正在制作Google Chrome扩展程序,我需要获取当前页面的网址和标题.我怎样才能做到这一点?

javascript google-chrome-extension

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

生成具有对数分布和自定义斜率的随机数

我试图生成具有对数分布的随机整数.我使用以下公式:

idx = Math.floor(Math.log((Math.random() * Math.pow(2.0, max)) + 1.0) / Math.log(2.0));
Run Code Online (Sandbox Code Playgroud)

这样可以很好地生成1000次迭代这样的序列(每个数字表示生成索引的次数):

[525, 261, 119, 45, 29, 13, 5, 1, 1, 1]
Run Code Online (Sandbox Code Playgroud)

小提琴

我现在正在尝试调整此分布的斜率,因此它不会快速下降并产生类似于:

[150, 120, 100, 80, 60, ...]
Run Code Online (Sandbox Code Playgroud)

盲目地玩系数并没有给我我想要的东西.任何想法如何实现呢?

javascript algorithm math statistics distribution

9
推荐指数
1
解决办法
735
查看次数

Eclipse不记得源查找路径

由于某些原因,Eclipse不记得某些java项目的源查找路径,并且每次调试时(重新部署后)我都需要按"编辑源查找路径"按钮并将当前项目添加到列表中.

有谁知道如何让它记住选定的源位置?

编辑: 这是一个用蚂蚁建造的tomcat项目.Eclipse版本是3.2.2

.classpath看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="output" path="web/WEB-INF/classes"/>
    <classpathentry kind="lib" path="web/WEB-INF/lib/commons-collections-3.2.jar"/>
    ... bunch of libs here
</classpath>
Run Code Online (Sandbox Code Playgroud)

更新:我找到了必需的设置 - 它在General Preferences - > Tomcat - > Source path下.

java eclipse

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

现在FB.ensureInit()的替代品是什么?

我以异步方式加载FB API:

<div id="fb-root"></div>
<script>
  window.fbAsyncInit = function() {
    FB.init({appId: 'your app id', status: true, cookie: true,
             xfbml: true});
  };
  (function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol +
      '//connect.facebook.net/en_US/all.js';
    document.getElementById('fb-root').appendChild(e);
  }());
</script>
Run Code Online (Sandbox Code Playgroud)

我如何知道它何时被初始化?FB.ensureInit()在API初始化之前,什么是阻止运行封闭代码的方法的替代品?

facebook

8
推荐指数
1
解决办法
4653
查看次数

如果它位于一个单独的文件中,如何在HTML中显示base64编码的图像?

我有base64编码的图像.如果我把它正确地放到html中就可以了:

<img src="data:image/png;base64,..."/>
Run Code Online (Sandbox Code Playgroud)

但是,当我将所有base64内容放入一个单独的文件中时,它不会:

<img src="image.base64.txt"/>
Run Code Online (Sandbox Code Playgroud)

我尝试将扩展名更改为.png,但它没有帮助.有任何想法吗?

html apache base64 image

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

如何标记生产前必须删除的一些代码?

有时为了测试/开发目的,我们在必须在生产构建中删除的代码中进行一些更改.我想知道是否有一种简单的方法来标记这样的块,这样只要它们存在,生产构建就会失败,或者至少它会在构建过程中以某种方式警告你.

简单"//TODO:"并不真正起作用,因为它被遗忘并混合了大量的其他待办事项.有什么更强的吗?

或者即使我可以创建一些外部txt文件并在生产之前放置有关该操作的说明,并且该ant将检查该文件是否存在然后取消构建.

我们正在使用Eclipse/Ant(和java + Spring).

更新:我并不是说在本地和生产中存在大量不同的代码.事实上,所有代码都是相同的,应该是相同的.简单地说,我注释掉了一些代码行,以便在开发过程中节省大量时间,并忘记取消注释或者沿着这些方向进行注释.我只是希望能够以某种方式标记项目需要注意的事项,并且生产构建将失败或显示警告.

java eclipse ant todo

7
推荐指数
3
解决办法
1365
查看次数

Chrome扩展程序,在选定的标签更新后,专注于页面而不是多功能框?

我创建了一个名为quickmarks的扩展,它将在当前选中的选项卡上按关键字打开书签.我正在使用omnibox来选择书签(chrome.omnibox.onInputEntered),并使用chrome.tabs.updateAPI在当前标签中打开书签的网址,方法是提供网址updateProperties.但是,在更新选项卡后,焦点仍然保留在多功能框中,这使得用户体验不如我想要的那么好.那么有没有办法将焦点设置到页面,而不是多功能框.

顺便说一句,我试图通过使用打开一个新的选项卡chrome.tabs.create.页面将被聚焦而不是多功能框,这是我想要的行为.

谢谢.

google-chrome google-chrome-extension

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

如何通过元素索引获取LinkedHashMap的子图?

我试图获得LinkedHashMap基于元素索引的子图.我在这里重新发明轮子吗?听起来这应该是API中的某个地方:

public <K,V> LinkedHashMap<K,V> subMap(LinkedHashMap<K,V> map, int fromIndex, int toIndex) {
    LinkedHashMap<K,V> result = new LinkedHashMap<K,V>();

    int i=0;
    for(Map.Entry<K,V> entry : map.entrySet()) {
        if(i >= fromIndex && i < toIndex) {
            result.put(entry.getKey(), entry.getValue());
        }
        i++;
    }

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

这是要走的路还是有其他更好/现有的解决方案(在Java 6 API中).

java

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

如何为Android平板电脑和前11 sdk提供Android应用程序?

更新:将此添加到清单解决了它:

<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="14"/>
<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" android:anyDensity="true"/>
Run Code Online (Sandbox Code Playgroud)

看起来谷歌默默地停止在平板电脑市场上列出新提交的应用程序,这些应用程序不符合他们的"优化提示".

其中一个"提示"是设置minSdkVersion="11",这意味着失去40%仍然运行sdk 10(热闹)的整个用户群.

有人可以建议一个最难以解决的解决方案,让我同时针对前11 SDK用户和平板电脑,最好不要进入多个APK业务.

如果要使用多个APK,那么分隔用户的最佳标准是什么,因此我至少可以拥有一个版本代码.

(该应用程序与所有屏幕尺寸和密度完全兼容,目前是目标minSdkVersion="8")

android tablet google-play

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