小编bes*_*sss的帖子

如何总是向上舍入到下一个整数

我试图找到在网站上构建寻呼机的总页数(所以我希望结果是一个整数.我得到一个记录列表,我想分成10页/页(页数)

当我这样做:

list.Count() / 10
Run Code Online (Sandbox Code Playgroud)

要么

list.Count() / (decimal)10
Run Code Online (Sandbox Code Playgroud)

而且list.Count() =12,我得到了结果1.

我将如何编码,以便2在这种情况下得到它(其余部分应该总是添加1)

c# language-agnostic rounding

81
推荐指数
5
解决办法
14万
查看次数

创建一个可变的java.lang.String

众所周知,Java String是不可变的.从一开始,不可变字符串就是java的重要补充.与C风格的字符串相比,不变性允许快速访问和大量优化,显着减少了错误,并有助于实施安全模型.

可以在不使用黑客的情况下创建可变的,即

  • java.lang.reflect
  • sun.misc.Unsafe
  • bootstrap类加载器中的类
  • JNI(或JNA,因为它需要JNI)

但它是否可以只用普通的Java,以便可以随时修改字符串?问题是如何

java security string

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

Java将Arraylist <Float>转换为float []

我怎么能这样做?

我有一个arraylist,有浮动元素. (Arraylist <Float>)

(float[]) Floats_arraylist.toArray()
Run Code Online (Sandbox Code Playgroud)

它不起作用.

无法从Object []转换为float []

java arrays autoboxing casting arraylist

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

在ScheduledExecutorService中运行的任务本身内停止定期任务

在ScheduledExecutorService中运行时,是否有一种很好的方法可以阻止任务内部重复任务?

可以说,我有以下任务:

Future<?> f = scheduledExecutor.scheduleAtFixedRate(new Runnable() {
    int count = 0;
    public void run() {
       System.out.println(count++);
       if (count == 10) {
           // ??? cancel self
       }
    }
}, 1, 1, TimeUnit.SECONDS);
Run Code Online (Sandbox Code Playgroud)

从外面看,很容易通过f.cancel()取消,但是如何在指定的地方停止重复?(通过AtomicReference传递Future是不安全的,因为当scheduleAtFixedRate返回f迟到且变量设置得太晚时,有一个潜在的窗口,并且任务本身可能已经运行,在引用中看到null.)

java concurrency anonymous-class executorservice variable-initialization

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

从其ID获取对Thread对象的引用

如果我知道与该线程关联的ID,我如何才能获得对正在运行的线程的引用?

例如

long threadID = 12342;
Thread thread = (What goes here?) getThreadFromId(threadID); //I know this is totally made up
Run Code Online (Sandbox Code Playgroud)

java multithreading android

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

你如何处理Java中的"不可能"异常?

有时候,我最终还是要抓住一个我知道永远不会发生的异常,比如这里

URLDecoder.decode("some string", "UTF-8"); //No unknown encoding possible
Run Code Online (Sandbox Code Playgroud)

或者在这里:

public void methodWithURL(URL url){
    URI uri = new URI(url); //No invalud URI syntax possible
}
Run Code Online (Sandbox Code Playgroud)

你怎么处理这个?我通常会记录一个关于宇宙定律如何变化的有趣错误,然后抛出一个RuntimeException.有没有更好的办法?

java exception-handling

17
推荐指数
2
解决办法
2635
查看次数

InetAddress类中的isReachable问题

作为一项任务,我必须在局域网上找到所有活着的计算机.我正在使用类的isReachable功能InetAddress.但问题是没有任何东西可以显示给我.所以我试图isReachable使用谷歌的IP,但仍然无法访问.

这是代码:

import java.net.*;

public class alive{
    public static void main(String args[]){
        try{
            InetAddress ia = InetAddress.getByAddress(new byte[]{(byte)209, (byte)85, (byte)153, (byte)104});
            boolean b = ia.isReachable(10000);
            if(b){
                System.out.println("Reachable");
            }
            else{
                System.out.println("Unrachable");
            }

        }catch(Exception e){
            System.out.println("Exception: " + e.getMessage());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

输出是: Unreachable

java networking icmp

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

限制java应用程序的内存和CPU使用率

说,"运行myApp.jar,cpu = 800,内存= 1024"

我已经做了多年的java编程,问这个问题是一个尴尬.我甚至不知道这是否可能.如果是这样,怎么样?

我只想知道是否可以设置java程序的最大内存和CPU使用率.我突然想到了这一点,因为我最近开始开发移动应用程序.我想知道应用程序在具有非常有限的内存和处理器的设备上的行为.

我看到物理引擎带有在浏览器上运行的演示应用程序,或者我可以在我的PC上执行.如果我在移动设备上运行它会怎么样?性能是否相同?我不是开发一个示例移动应用程序来测试库的性能,而是首先使用我的PC运行特定的cpu和内存.

顺便说一下,我试着谷歌搜索...我发现只是监控和性能调整.我可能使用错误的关键字.

java performance memory-management cpu-usage

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

在这种情况下使用的Java集合是什么?

我需要在列表或集合中保存大量元素(500k左右),我需要进行高性能遍历,添加和删除.这将在多线程环境中完成,我不关心我是否在遍历开始后看到更新完成(弱一致),Java集合适用于这种情况?

java collections performance multithreading

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

解锁后的Java线程执行顺序

假设我有2个线程,t1t2,以及一个锁定对象,m.线程t1处于无限循环中,在每次迭代时,它会抓取m上的锁定,执行某些操作,解锁m并立即重新启动.在一次迭代期间,t2请求对m进行锁定但被t1阻止并且必须等待.现在,当t1解锁m时,是否保证t2将获得m的下一次锁定?或者可以点t1下一轮迭代偷偷走在前面?

通常,是否为等待线程设置了队列?如果t1具有锁定,并且所有其他线程也希望该锁定按以下顺序被阻止:t2,t3,...,其余线程将按照它们被阻止的顺序继续执行(例如t2运行,然后是t3,等等.)?

(我简单地仔细阅读了java规范并找不到答案.如果它在那里,请告诉我,我会回去仔细阅读.)

谢谢!(首先是SO帖子,哇哦!)

java multithreading locking monitor

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