小编Tim*_*der的帖子

你能用Java扩展ArrayList吗?

是否可以创建一个扩展ArrayList的子类?如果是这样,怎么样?

java arraylist extend

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

22
推荐指数
2
解决办法
4845
查看次数

如何确定点(X,Y)是否包含在圆的圆弧部分(即饼图)中?

想象一个圆圈.想象一个馅饼.想象一下,尝试返回一个bool,它确定提供的X,Y参数是否包含在其中一个饼图中.

我对弧的了解:

我有CenterX,CenterY,Radius,StartingAngle,EndingAngle,StartingPoint(圆周上的点),EndingPoint(圆周上的点).

给定X,Y的坐标,我想确定该坐标是否包含在饼图幻灯片中的任何位置.

geometry geometric-arc

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

为什么再次调用Thread.start时会发生IllegalThreadStateException

public class SieveGenerator{

static int N = 50;
public static void main(String args[]){

    int cores = Runtime.getRuntime().availableProcessors();

    int f[] = new int[N];

    //fill array with 0,1,2...f.length
    for(int j=0;j<f.length;j++){
        f[j]=j;
    }

    f[0]=0;f[1]=0;//eliminate these cases

    int p=2;

    removeNonPrime []t = new removeNonPrime[cores];

    for(int i = 0; i < cores; i++){
        t[i] = new removeNonPrime(f,p);
    }

    while(p <= (int)(Math.sqrt(N))){
        t[p%cores].start();//problem here because you cannot start a thread which has already started(IllegalThreadStateException)
        try{
            t[p%cores].join();
        }catch(Exception e){}
        //get the next prime
        p++;
        while(p<=(int)(Math.sqrt(N))&&f[p]==0)p++;
    }


    //count …
Run Code Online (Sandbox Code Playgroud)

java multithreading

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

if-else结构

我有这些冗长的陈述,我将在这里称为x,y等.我的条件语句的结构如下:

if(x || y || z || q){
    if(x)
       do someth
    else if (y)
       do something

    if(z)
       do something
    else if(q)
       do something
}
else
    do smthing
Run Code Online (Sandbox Code Playgroud)

有没有更好,更短的方式来写这个东西?谢谢

java if-statement readability

12
推荐指数
1
解决办法
416
查看次数

快速排序最坏情况

quicksort算法何时需要O(n ^ 2)时间?

algorithm quicksort

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

将String Date转换为String date不同的格式

我是Java新手.Postgres db包含日期格式yyyy-MM-dd.我需要转换为dd-MM-yyyy.

我试过这个,但显示错误的结果

   public static void main(String[] args) throws ParseException {

    String strDate = "2013-02-21";
      DateFormat formatter = new SimpleDateFormat("dd-MM-yyyy");
      Date da = (Date)formatter.parse(strDate);
      System.out.println("==Date is ==" + da);
      String strDateTime = formatter.format(da);

      System.out.println("==String date is : " + strDateTime);
}
Run Code Online (Sandbox Code Playgroud)

java date-conversion simpledateformat

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

如何在java中进行多处理,以及期望的速度增益?

我是一个使用Java在csv文件上进行数据处理的新手.为此,我使用Java(线程池)的多线程功能将csv文件批量导入Java,并在每个行上执行一些操作.在我的四核上,多线程可以大大加快这个过程.

我很想知道多处理如何/更加加速操作?如果是这样,是否有可用的教程?(Java Basic Tutorial提到了一个类,但是我不熟悉语法来自己理解这个类:

来自http://download.oracle.com/javase/tutorial/essential/concurrency/procthread.html:

Java虚拟机的大多数实现都作为单个进程运行.Java应用程序可以使用ProcessBuilder对象创建其他进程.多进程应用程序超出了本课程的范围[那时它们在哪里解释?].

java multiprocessing

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

如何在eclipse中将包视为文件夹结构

在eclipse中,我希望看到包作为文件夹结构而不是Package Explorer默认设置提供的扁平外观,有没有办法做到这一点?

java eclipse package

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

ByteBuffer/IntBuffer/ShortBuffer Java类是否快速?

我正在研究Android应用程序(显然是Java),最近我更新了我的UDP阅读器代码.在这两个版本中,我设置了一些缓冲区并接收UDP数据包:

byte[] buf = new byte[10000];
short[] soundData = new short[1000];
DatagramPacket packet = new DatagramPacket (buf, buf.length);
socket.receive (packet);
Run Code Online (Sandbox Code Playgroud)

在初始版本中,我将数据一次放回一个字节(实际上是16个PCM音频数据):

for (int i = 0; i < count; i++)
    soundData[i] = (short) (((buf[k++]&0xff) << 8) + (buf[k++]&0xff));
Run Code Online (Sandbox Code Playgroud)

在更新的版本中,我使用了一些我开始时不知道的很酷的Java工具:

bBuffer  = ByteBuffer.wrap (buf);
sBuffer  = bBuffer.asShortBuffer();
sBuffer.get (soundData, 0, count);
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,"计数"正在正确填充(我检查过).然而,我的流媒体音频似乎出现了新的问题 - 也许它的处理速度不够快 - 这对我来说没有任何意义.显然,缓冲区代码正在编译成三个以上的JVM代码语句,但是当我开始这个时,第二个版本会比第一个版本更快,这似乎是一个合理的假设.

很明显,我并不是说我的代码必须使用Java NIO缓冲区,但至少乍一看,它看起来似乎很难做到这一点.

任何人都有一个快速,简单的Java UDP阅读器的建议,以及是否有一个普遍接受的"最佳方式"?

谢谢,R.

java android nio bytebuffer

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