有谁知道为什么当我运行这个java应用程序时,它会不断提出默认值,而不是正确的答案?
主要代码如下:
import java.util.Scanner;
public class mainClass {
public static void main(String[] args){
Scanner scanInt = new Scanner(System.in);
Scanner scanString = new Scanner(System.in);
System.out.println("Calculator");
System.out.println("Enter 1st number:");
int x = scanInt.nextInt();
System.out.println("Enter opperation:");
String op = scanString.nextLine();
System.out.println(op);
System.out.println("Enter 2nd number:");
int y = scanInt.nextInt();
String ans = "The answer is: ";
if(op == "+"){
System.out.println(ans + methods.addition(x, y));
}else if(op == "-"){
System.out.println(ans + methods.subtraction(x, y));
}else if(op == "*"){
System.out.println(ans + methods.multiplication(x, y));
}else if(op == "/"){
System.out.println(ans …Run Code Online (Sandbox Code Playgroud) 简而言之,我想积累一堆JButton数组,并ActionListener为数组创建一个类.
我正在尝试创建一个计算器,并且所有编号的按钮(例如"6")都在一个JButton数组中,因为我希望它将设置的数字输入到一个临时的int中,并且创建一个更容易方法,而不是10.我还有40个其他按钮,我想应用相同的主体,但在不同的数组,所以它将更快更容易把这些ActionListener按钮数据放入几个方法实现了该方法.这是我的代码:
private JButton num0, num1, num2, num3, num4, num5, num6, num7, num8, num9;
private JButton numArray[] = {num0, num1, num2, num3, num4, num5, num6, num7, num8, num9};
public GUI(){
numArray.AddActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event){
}
});
}
Run Code Online (Sandbox Code Playgroud) 我正在寻找一些如下所示的代码:
public class Parent<T is_or_extends Parent<T>> {
public T function() {
// do some stuff //
return correct();
}
public T correct() {
return (T) this;
}
}
Run Code Online (Sandbox Code Playgroud)
这样任何子类都可以访问其他父函数,但仍然是独立的类(没有将function()的返回值向上转换为Parent的实例).程序员也可以独立使用Parent类(因此可以创建Parent的实例而不使用function()向下转换返回对象)
执行:
public class Child extends Parent<Child> {}
Run Code Online (Sandbox Code Playgroud)
用法:
Child child = new Child(); // ok
Parent<Child> polymorph = new Child(); // ok
Parent<Parent> parent = new Parent<Parent>(); // ERROR!
Run Code Online (Sandbox Code Playgroud)
为了概述差异,这不是方法链的问题.相反,当父类接受子类的泛型时,它不能再单独用作类(使用上面的代码),因为new Parent<Parent>()不会编译(当用" is_or_extends" 替换" "时extends)
我的目标:
我想要实现的是父类,当扩展时,function()将返回子类的对象而不是父类.
我会使用泛型类型来告诉父类哪个子类调用了该函数,但是我不能再使用父类的对象而不会遇到异常.一个例子如下:
public static class Parent<T extends Parent<T>> {} …Run Code Online (Sandbox Code Playgroud)