我不明白&&和||之间的区别 在某种程度上.
If(a && b) { then do this }
Run Code Online (Sandbox Code Playgroud)
现在,如果是假的,那么B 是看了,但条件不测试.
但....
If(a || b) { then do this }
Run Code Online (Sandbox Code Playgroud)
现在,如果a为真,则b 未查看,并且未测试条件.
为什么是这样.我想到了&&和||的目的 是为了帮助加快速度.如果它可以通过测试第一个条件来确定结果,则不需要查看第二个条件.但在&&的情况下,它确实看着它.而在||的情况下 它很有意义.
我有这个权利吗?如果我这样做,为什么会这样?
现在我知道有很多关于这个的问题,我已经阅读了十几个。但我只是撞到了一堵墙,我无法理解它的正面或反面。
这是我的问题。
我有 3 个面板类。
ConfigurePanel.java
ConnectServerPanel.java
RunServerPanel.java
Run Code Online (Sandbox Code Playgroud)
和我的 JFrame 类
StartUPGUI.java
Run Code Online (Sandbox Code Playgroud)
这是在启动时初始化的内容
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
startUp = new sjdproject.GUI.ConfigurePanel();
runServer = new sjdproject.GUI.RunServerPanel();
serverConnect = new sjdproject.GUI.ConnectServerPanel();
setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
jPanel1.setLayout(new java.awt.CardLayout());
jPanel1.add(startUp, "card2");
jPanel1.add(runServer, "card4");
jPanel1.add(serverConnect, "card3");
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(27, Short.MAX_VALUE)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 419, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(38, 38, 38))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(27, 27, 27)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 281, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(30, Short.MAX_VALUE))
);
Run Code Online (Sandbox Code Playgroud)
我的 StartUPGUI 首先调用 StartUpPanel。在我的 StartUpPanel.java …