如何将字符串转换为 int?
Posted
技术标签:
【中文标题】如何将字符串转换为 int?【英文标题】:How can I convert a string to an int? 【发布时间】:2015-11-12 10:45:27 【问题描述】:对此可能有一个非常简单的答案。我的目标是将输入的信息 x 和 y 分开并放入 z 中。
这是我的代码:
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends Activity
public int x = Integer.parseInt("");
public int y = Integer.parseInt("");
public int z = (y/x);
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Button
Button btn = (Button) findViewById(R.id.button);
//EditText
EditText nop = (EditText) findViewById(R.id.editText);
EditText cob = (EditText) findViewById(R.id.editText2);
x = Integer.parseInt(nop);
y = Integer.parseInt(cob);
final TextView tv = (TextView) findViewById(R.id.textView);
btn.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
tv.setText(z);
);
【问题讨论】:
您是否在 Google 中输入了您的标题? 似乎是什么问题?您似乎已经为 x 和 y 这样做了。我能想象的唯一问题是您仅在声明成员时指定 z,并且您确实更改了 x 和 y 的值,但从不更新 z。 @sᴜʀᴇsʜᴀᴛᴛᴀ他实际上可以转换它看看x和y的转换,但他没有正确地问问题。 我不确定你在哪里度过了这两个小时。五分钟阅读 Integer 及其方法的 javadoc ... 可能是更好的投资。附带说明:最有可能的是,您当前的问题是您的代码引发了异常;来自:public int x = Integer.parseInt("");
... 因为从空字符串解析 int 根本行不通。
你已经有@Uma 的答案...... 10 分钟前...... 请阅读 你发布一个问题是为了得到答案,而不是让你的头脑在 cmets 中挣扎
【参考方案1】:
在 onclick
函数中声明 z
。或者在你的函数中为其赋值。
还有nop
和cob
是editText的获取里面的数据,使用getText()
。
因为Integer.parseInt()
只接受String
而不接受editText
,所以你必须使用getText()
来获取其中的String值。
x = Integer.parseInt(nop.getText().toString());
y = Integer.parseInt(cob.getText().toString());
final TextView tv = (TextView) findViewById(R.id.textView);
btn.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
int z = x / y;
tv.setText(z);
);
z
也被全局声明并且没有分配任何内容。但是每次单击按钮时都需要为其分配一个值,以便每次单击按钮时您的 editText 都会更改。
【讨论】:
我发布了几乎相同的答案;) 是的,错误是一样的,所以我们可能会得到相同的答案:) 关于z
的范围的一些解释以及何时划分也很好;),OP 似乎有点混淆将z=x/y
声明为属性
谢谢你们的帮助
你明白我为什么这样做吗?或者你需要更清楚一些事情?【参考方案2】:
首先将 Edittext 转换为字符串,然后将其转换为 Integer。
String Val1 = nop.getText().toString();
String Val2 =cob.getText().toString();
x = Integer.parseInt(val1);
y = Integer.parseInt(val2);
【讨论】:
以上是关于如何将字符串转换为 int?的主要内容,如果未能解决你的问题,请参考以下文章