Как я могу решить ошибку в строковом сообщении error? Пожалуйста, помогите мне
Сообщение об ошибке:
it says that "Create method minPrime in isprime.isprime.listener1" Methods minPrime and maxPrime can not be applied given types
Я знаю, что причина этой ошибки заключается в следующем:
в функциях minPrime и maxPrime я даю такие параметры, как тип класса,поэтому, когда я хочу вызвать эти методы из - & gt; строкового сообщения, будет ошибка, как есть.но как я могу решить эту проблему?кто-нибудь может мне помочь?
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package isprime; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class isprime extends JFrame { private int n; public isprime(int n) { this.n = n; } public int getN() { return n; } public void setN(int n) { this.n = n; } private JLabel label1; private JLabel label2; private JButton min; private JButton max; private JTextField Box1; private JTextField Box2; public isprime() { setSize(300, 200); setTitle("Findingmax and min prime number in the range"); setLayout(new FlowLayout()); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); mine();//function prototype } public void mine() { label1 = new JLabel("Enter first integer"); label2 = new JLabel("Enter second integer"); Box1 = new JTextField(5); Box2 = new JTextField(5); min = new JButton("Min"); max = new JButton("Max"); //add-de istediyimiz ardicilliqda daxil edireik add(label1); add(Box1); add(label2); add(Box2); add(min); add(max); //action fired min.addActionListener(new listener1() ); max.addActionListener(new listener2() ); } private class listener1 implements ActionListener { private int n; public boolean isPrime(int n) {//checking is this number prime or not boolean answer = true; if (n == 2) {//because 2 is a prime number return answer; } for (int i = 2; i <= n / 2; i++) {//we begin from two,becuase 1 is not prime or composite // n/2-ye kimi yoxlamaq da kifayetdir if (n % i == 0) {//eger eded yalniz ozune ve bire bolunerse ,prime-dir,qalan hallarda composite answer = false;//demeli prime deyil break; } } return answer; } int nextPrime(int n) { n++; while (!isPrime(n)) { n++; } return n; } public int maxPrime(isprime p) {//for finding max prime number in the given range for (int i = this.n; i>= p.n; i--) { if(this.isPrime(i)) return i; } return 1; } public void actionPerformed(ActionEvent e) { int a; int b; try { a = Integer.parseInt(Box1.getText()); b = Integer.parseInt(Box2.getText()); } catch (Exception exc) { a = -1; b = -1; } String message = "Max prime is:" + this.maxPrime(a, b); JOptionPane.showMessageDialog(null, message); } } private class listener2 implements ActionListener { private int n; public int minPrime(isprime p) {//for finding min prime number in the given range for (int i = this.n; i <= p.n; i++) { if(this.isPrime(i)) return i; } return 1; } public boolean isPrime(int n) {//checking is this number prime or not boolean answer = true; if (n == 2) {//because 2 is a prime number return answer; } for (int i = 2; i <= n / 2; i++) {//we begin from two,becuase 1 is not prime or composite // n/2-ye kimi yoxlamaq da kifayetdir if (n % i == 0) {//eger eded yalniz ozune ve bire bolunerse ,prime-dir,qalan hallarda composite answer = false;//demeli prime deyil break; } } return answer; } int nextPrime(int n) { n++; while (!isPrime(n)) { n++; } return n; } public void actionPerformed(ActionEvent e) { int a; int b; try { a = Integer.parseInt(Box1.getText()); b = Integer.parseInt(Box2.getText()); } catch (Exception exc) { a = -1; b = -1; } String message = "Min prime is:" + this.minPrime(); JOptionPane.showMessageDialog(null, message); } } public static void main(String[] args) { new isprime(); } }
Что я уже пробовал:
Я попытался найти max и min prime в диапазоне с помощью этого кода и графического интерфейса. который я принимаю, что this. n-это начальное число диапазона, а p.n-конечное число диапазона.я не могу решить эту ошибку, которая находится в строковом сообщении.
Patrice T
И вы планируете поделиться с нами сообщением об ошибке ?
Member 12702056
как я могу поделиться его фотографией?
Member 12702056
как я могу поделиться его фотографией?
Patrice T
Достаточно будет ввести сообщение об ошибке.
Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.
Member 12702056
в нем говорится, что " Создайте метод minPrime в isprime. isprime.listener1"
Patrice T
Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.
Чтобы каждый мог обратить внимание на эту информацию.
Member 12702056
Спасибо, я обновил его)