java 串口-代码,运行结果如下,为什么结果会重复5次,java新手求解惑

问题描述

代码,运行结果如下,为什么结果会重复5次,java新手求解惑
    int x=0;
    Enumeration portList1 = CommPortIdentifier.getPortIdentifiers();
    while (portList1.hasMoreElements()) {
        x++;
        test_buffer[x]=((CommPortIdentifier) portList1.nextElement()).getName();
        System.out.println("第"+x+"串口"+test_buffer[x]);
        if((test_buffer[x]==null)){
            x--;
            break;
        }
    }

    test_1=new String[x];
    for(int j=0;j<x;j++){
        test_1[j]=test_buffer[j+1];
        System.out.println("第"+j+"串口:"+test_1[j]);
    }

    第1串口COM1

第2串口COM2
第3串口LPT1
第4串口LPT2
第0串口:COM1
第1串口:COM2
第2串口:LPT1
第3串口:LPT2
第1串口COM1
第2串口COM2
第3串口LPT1
第4串口LPT2
第0串口:COM1
第1串口:COM2
第2串口:LPT1
第3串口:LPT2
第1串口COM1
第2串口COM2
第3串口LPT1
第4串口LPT2
第0串口:COM1
第1串口:COM2
第2串口:LPT1
第3串口:LPT2
第1串口COM1
第2串口COM2
第3串口LPT1
第4串口LPT2
第0串口:COM1
第1串口:COM2
第2串口:LPT1
第3串口:LPT2
第1串口COM1
第2串口COM2
第3串口LPT1
第4串口LPT2
第0串口:COM1
第1串口:COM2
第2串口:LPT1
第3串口:LPT2

解决方案

k,分析一下你的程序,首先看到第一个第0串口:COM1,就知道x=4
你的规律是1~4,0~3打印了4次,先让不是这个程序造成的,你外面的程序调用这段调用了5次

解决方案二:

首先你这打印的就有问题,System.out.println("第"+j+"串口:"+test_1[j]);你怎么知道是上面的还是下面的?都没有个区分...把输出稍微该的出入下,好辨认是上面打印的还是下面打印的...

时间: 2024-10-26 19:42:05

java 串口-代码,运行结果如下,为什么结果会重复5次,java新手求解惑的相关文章

java web-ssh框架代码运行出现问题,还有其它jAVA WEB 代码运行也有类似问题,大神来解答啊

问题描述 ssh框架代码运行出现问题,还有其它jAVA WEB 代码运行也有类似问题,大神来解答啊 十月 25 2015 10:49:26 下午 org.apache.catalina.core.AprLifecycleListener init信息: Loaded APR based Apache Tomcat Native library 1.1.30 using APR version 1.4.8.十月 25 2015 10:49:26 下午 org.apache.catalina.cor

java 代码运行异常在eclipse

问题描述 java 代码运行异常在eclipse package come1; import java.util.Vector; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; public class Test1 extends JFrame{ Vector rowData,columnNames; JTable jt=null; JScrollPane jsp=null

java代码运行出现错误“Address already in use: Cannot bind”

问题描述 java代码运行出现错误"Address already in use: Cannot bind" 这是数据接受端代码: import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.SocketException; public class ReceiveUDP { public static void main(Stri

java基础-java类中的代码运行顺序

问题描述 java类中的代码运行顺序 下面列子:public class A{ private List list=new ArrayList(); public static void main(string[] args){ A a=new A(); } }问 :1,该类什么时候被编译?什么时候被加载? 2,在运行该类的时候list 对象是在main函数执行过才有的么?还是说在加载的时候就已经被创建了? 3,如果其中有静态代码块,那么静态代码块在类加载的时候就被执行了么?也就是说在main函

用 eclipse 编译java代码运行为灰色(none applicable)

问题描述 用 eclipse 编译java代码运行为灰色(none applicable) package qq; public class sort_Demo { int i,j,k,swap; sort_Demo(){ i=j=k=swap=0; } void sort(int t1,int t2[]){ for(i=0;i k=i; for(j=i+=1;j if(t2[j] k=j; if(k!=i){ swap=t2[i]; t2[i]=t2[k]; t2[k]=swap; } } }

java代码-请大神帮我看看这个java程序怎么运行不了,帮我调一调这个程序,谢谢

问题描述 请大神帮我看看这个java程序怎么运行不了,帮我调一调这个程序,谢谢 是这个错误Exception in thread "main" java.lang.Error: Unresolved compilation problem: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; pub

java-关于Java的默认运行方法的机制问题。

问题描述 关于Java的默认运行方法的机制问题. timer.schedule(new MyTask()01000);这一句代码中,new了一个MyTask()的类,怎么就自动调用了里面的run()函数?新手勿喷. 解决方案 timer在到了那个指定时刻,它会反过来调用run,这是约定好的. 解决方案二: 这是类似于回调的机制吗?

Java的多进程运行模式分析

一般我们在java中运行其它类中的方法时,无论是静态调用,还是动态调用,都是在当前的进程中执行的,也就是说,只有一个java虚拟机实例在运行.而有的时候,我们需要通过java代码启动多个java子进程.这样做虽然占用了一些系统资源,但会使程序更加稳定,因为新启动的程序是在不同的虚拟机进程中运行的,如果有一个进程发生异常,并不影响其它的子进程. 在Java中我们可以使用两种方法来实现这种要求.最简单的方法就是通过Runtime中的exec方法执行java classname.如果执行成功,这个方法

java源码-求这段c语言的代码换成java的代码

问题描述 求这段c语言的代码换成java的代码 #include #define P 3.1415927#define toFeet(x) x/12.0#define toMiles(x) x/5280.0int main(){ double diameter;//直径 int revolutions;//转数 double time;//香蕉 double s; int count=1; while(scanf("%lf%d%lf",&diameter,&revolu