我已经在我的应用程序中编辑文本以操纵产品数量,但是如果我要更改数量,那么问题就是在那个时候获得NPE。要更改编辑文本中的数量,我需要删除现有内容并需要添加新数量,请检查以下代码
viewHolder.edt_product_qty.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
quantity_count= Integer.parseInt(viewHolder.edt_product_qty.getText().toString());
buyNowList(user_id,"UserCart",0,stList.get(position).getCartList1().getId(),stList.get(position).getCartList1().getProdSku(),stList.get(position).getCartList1().getProdId(),quantity_count,0,qty_status,stList.get(position).getCartList1().getProdPrice());
}
@Override
public void afterTextChanged(Editable editable) {
}
});
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
try {
quantity_count = Integer.parseInt(viewHolder.edt_product_qty.getText().toString());
buyNowList(user_id, "UserCart", 0, stList.get(position).getCartList1().getId(), stList.get(position).getCartList1().getProdSku(), stList.get(position).getCartList1().getProdId(), quantity_count, 0, qty_status, stList.get(position).getCartList1().getProdPrice());
} catch (NumberFormatException e) {
// maybe show some information to user in case of exception
}
}
匿名用户
当您删除editText上的所有内容时,editText将返回一个空字符串。因此,您将获得< code>NPE和< code >数字格式异常。
你可以这样处理:
if(!viewHolder.edt_product_qty.getText().toString().equals("")){
quantity_count= Integer.parseInt(viewHolder.edt_product_qty.getText().toString());
buyNowList(user_id,"UserCart",0,stList.get(position).getCartList1().getId(),stList.get(position).getCartList1().getProdSku(),stList.get(position).getCartList1().getProdId(),quantity_count,0,qty_status,stList.get(position).getCartList1().getProdPrice());
}
比较初始值和当前值
首先,您需要在< code>beforeTextChanged中指定一个变量作为初始值。
initalValue =viewHolder.edt_product_qty.getText().toString();
然后在文本更改中
:
if(!viewHolder.edt_product_qty.getText().toString().equals("")){
quantity_count = Integer.parseInt(viewHolder.edt_product_qty.getText().toString()); //
}if(initalValue>quantity_count)
{
// code
}else
{
//code
}
看看这个https://stackoverflow.com/a/20278708/5156075
使用try和
catch块
try {
quantity_count = Integer.parseInt(viewHolder.edt_product_qty.getText().toString());
buyNowList(user_id,"UserCart",0,stList.get(position).getCartList1().getId(),stList.get(position).getCartList1().getProdSku(),stList.get(position).getCartList1().getProdId(),quantity_count,0,qty_status,stList.get(position).getCartList1().getProdPrice());
} catch (NumberformatException e) {
e.printStackTrace();
}
我正在用一种形式做一个简单的插入。 no_text dbname_m_db 我想回去看看。所以我要做4个测试,它们是 测试1:插入no_text 测试2:插入no_text_external 测试3:不插入任何文本 测试4:不同时插入两个 所以结果是,只有test3是成功地查看它。而其他3返回错误号格式例外:对于输入字符串:""。我不知道过滤它的最佳方法。这里的代码,我的工作。任何想法?
问题内容: 在我日常的Web应用程序开发中,有许多情况需要我们从用户那里获取一些输入。 然后将这个数字输入传递给可能是应用程序的服务层或DAO层。 由于它是一个数字(整数或浮点数),在某个阶段,我们需要将其转换为整数,如以下代码片段所示。 在上述情况下,在这里,我必须检查输入是否不为null或是否没有输入(空白),或者有时是否有非数字输入的可能性,例如blah,test等。 处理此类情况的最佳方法
我有数字形式的感觉,但我不知道为什么? XML文档http://www.nbp.pl/kursy/xml/c073z070413.xml 异常线程"main"java.lang.NumberFormatExcture:对于输入字符串:"dolar amerykaski"在java.lang.NumberFormatException.forInputString(NumberFormatExcep
我有metohod myservice#create,它抛出CustomException。我在可选#map中调用此方法,如下所示: 当我用引起异常的参数调用这个方法时,就会捕获CustomException,但结果是操作成功,状态为200。如何在lambda中处理此异常并返回异常消息?
全部的 我是骆驼的开胃菜。我有一些问题。这里有一个场景。 文件正文中有2个字段。(seq, date, OR no.)所以,我为这个数据格式生成了pojo类。 我申请了骆驼队。几天后,关于添加名称字段,dataformat发生了更改。 所以,我们需要修改pojo类并再次重建应用程序。但我们不想再次构建应用程序并为dataformat生成pojo类。 如果我们可以在运行时使用xsd动态生成Pojo类
我正在尝试格式化我的日期和时间。 我的代码 its显示错误未处理异常:格式异常:无效日期格式 现在它看起来像这样