如何将小数点限制为每个数字+一位
php小编鱼仔带来的Java问答:如何实现将小数点限制为每个数字后只能保留一位?这是许多Java开发者在处理数字格式化时经常遇到的问题。在实际项目中,对小数点的控制是非常重要的,尤其是涉及金额、货币等需要精确计算的场景。接下来,我们将通过简单易懂的例子,详细介绍在Java中如何实现这一需求。
问题内容
我正在 java/android studio 中编写一个计算器,我遇到了每个数字只需要一位小数点的问题。类似于 1.2,而不是 1.2.3。允许用户在计算器中使用小数或自然数,但是,一旦用户按下点(“.”)符号,就无法对该特定数字再次重复。
我对其进行编码以显示错误(这不起作用),并且用户不应该在数字的第一个小数点之后添加另一个小数点,而不是显示错误。它需要适用于 1.1 + 1.1,但不适用于 1.1.1。或 1.1。等等
我尝试将此作为代码的一部分,但它不起作用。就像,它不断禁用我的等于按钮,即使我已经在第一次警告后立即编写了它。
Pattern p; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); p = Pattern.compile("(\\d*(\\.\\d*)?([+\\-*%\\]|$))*"); UserInput = findViewById(R.id.ed_calculation_input); UserInput.setShowSoftInputOnFocus(false); tvCalculationOutput = findViewById(R.id.tv_calculation_output); edUserInput.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { Matcher m = p.matcher(edUserInput.getText().toString()); if(!m.matches()) { edUserInput.setError("Enter valid no"); btnEqual.setEnabled(false); } else { btnEqual.setEnabled(true); } } @Override public void afterTextChanged(Editable s) { } });
登录后复制
解决方法
这个问题的解决方案相当简单。您已选择 edittext
作为数字的输入,不是吗?然后您所要做的就是添加行
<EditText ... android:inputType="numberDecimal" ... />
登录后复制
在 xml 布局文件中,防止数字有多个小数点(或字母或其他符号)。
以上是如何将小数点限制为每个数字+一位的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章
刺客信条阴影:贝壳谜语解决方案
4 周前
By DDD
Windows 11 KB5054979中的新功能以及如何解决更新问题
3 周前
By DDD
在哪里可以找到原子中的起重机控制钥匙卡
4 周前
By DDD
<🎜>:死铁路 - 如何完成所有挑战
1 个月前
By DDD
Atomfall指南:项目位置,任务指南和技巧
1 个月前
By DDD

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)