gpt4 book ai didi

java - 如何创建一个类来计算圆的面积和周长并使用 eclipse 发送结果?

转载 作者:行者123 更新时间:2023-12-01 23:30:08 27 4
gpt4 key购买 nike

我创建了一个应用程序来计算圆的面积和周长,然后将结果发送给用户。唯一的问题是我必须将计算放在与 MainActivity.java 不同的类中。我目前在 MainActivity.java 的底部进行了计算,这不是我想要的。这是我到目前为止所拥有的:

package com.areacircumferencecircle;

import android.os.Bundle;
import android.app.Activity;
import android.widget.*;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;

public class MainActivity extends Activity implements OnClickListener {

private Button btn;
private EditText edit;
private TextView area;
private TextView crf;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button)findViewById(R.id.button1);
edit = (EditText)findViewById(R.id.editText1);
area = (TextView)findViewById(R.id.textArea);
crf = (TextView)findViewById(R.id.textCircumference);
btn.setOnClickListener(this);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

@Override
public void onClick(View v) {
if(btn == v){
double r = Double.parseDouble(edit.getText().toString());
String a = Double.toString(3.141592 * (r * r));
String c = Double.toString(2 * 3.141592 * r);
crf.setText("Circumference: " + c);
area.setText("Area: " + a);
}

}

}

非常感谢任何帮助!

最佳答案

创建一个仅用于计算结果的类:

class Computations{
public double area(double r){
return 3.141592 * r * r;
}
public double circumference(double r){
return 2 * 3.141592 * r;
}
}

然后,在onClick(View v){...}中使用它。如果您希望经常调用该方法,则可以在该方法外部实例化 c 并将其保留为类变量。

public void onClick(View v) {
if(btn == v){
double r = Double.parseDouble(edit.getText().toString());
Computations c = new Computations();
crf.setText("Circumference: " + c.circumference(r));
area.setText("Area: " + c.area(r));
}
}

仅此而已!

关于java - 如何创建一个类来计算圆的面积和周长并使用 eclipse 发送结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19459944/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com