• 大小: 12KB
    文件类型: .java
    金币: 1
    下载: 0 次
    发布日期: 2021-05-19
  • 语言: Java
  • 标签: 源代码,  

资源简介

以 ~ ^ & > - 分别表示 非 析取 合取 条件 双条件 连接词以单个大写字母表示变量(支持26个变量)以字符0或者1表示值,式子中的T与F,支持 ( )(括号),有界面,这是源代码,可以自己直接在eclipse中运行

资源截图

代码片段和文件信息

package com.oristand.shiyan.lisan;



import java.awt.Dimension;
import java.util.List;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.Character.Subset;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Stack;
import java.util.TreeSet;

import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.TableColumn;

public class ZhenZhi extends Jframe implements ActionListener {
JTextField jtf jtf1;
JButton jb1 jb2 jb3;
JPanel jpanel1;
String suffix = null;
JTable table;
int a; // 表行数
int b;// 表列数
StringBuffer[] obje;
StringBuffer[] obje1;
StringBuffer[] obje2;
StringBuffer[] obje3;
List arr = new ArrayList();// 存放真值为1的行数

public ZhenZhi() {

setSize(400 600);
settitle(“真值表“);
setLocation(200 40);
setDefaultCloseOperation(EXIT_ON_CLOSE);

jpanel1 = new JPanel();
jpanel1.setLayout(null);
jpanel1.setPreferredSize(new Dimension(400 500));

jtf = new JTextField();
jtf.setBounds(20 400 340 35);

jtf1 = new JTextField();
jtf1.setBounds(20 500 340 35);

jb1 = new JButton(“真值表“);
jb1.setBounds(20 450 80 35);
jb1.setActionCommand(“jb1“);
jb1.addActionListener(this);

jb2 = new JButton(“主范式“);
jb2.setBounds(150 450 80 35);
jb2.setActionCommand(“jb2“);
jb2.addActionListener(this);

jb3 = new JButton(“帮助“);
jb3.setBounds(280 450 80 35);
jb3.setActionCommand(“jb3“);
jb3.addActionListener(this);

jpanel1.add(jtf);
jpanel1.add(jtf1);
jpanel1.add(jb1);
jpanel1.add(jb2);
jpanel1.add(jb3);

this.add(jpanel1);
setVisible(true);
}

/**
 * @param args
 */
public static void main(String[] args) {
ZhenZhi zhenzhi = new ZhenZhi();
}



@Override
public void actionPerformed(ActionEvent e) {
String s = e.getActionCommand();
if (s.equals(“jb1“)) {

String ss = jtf.getText();

String str = ““;
char[] chars = ss.toCharArray();
for (int i = 0; i < chars.length; i++) {
if (str.indexOf(chars[i]) == -1) {
str += chars[i];
}
}

try {
suffix = toSuffix(ss + “=“);// 追加=
} catch (Exception e1) {
e1.printStackTrace();
}

String s0 = str.replaceAll(“[0-9]“ ““);
String s1 = s0.replace(“>“ ““);
String s2 = s1.replace(“-“ ““);
String s3 = s2.replace(“&“ ““);
String s4 = s3.replace(“~“ ““);
String s5 = s4.replace(“^“ ““);

String sssss = s5.replaceAll(“[(-)]“ ““).toString() + “ “;

object[] columnNames = new object[sssss.length()];
for (int i = 0; i < sssss.length(); i++) {
columnNames[i] = (object) sssss.charAt(i);

}

int a = (int) Math.pow(2 columnNames.length - 1); // 表行数
int b = columnNames.length; // 表列数
intiComponent(a b columnNames

评论

共有 条评论